min() max()
是对字典键的运算,若想对字典值进行运算,则可使用zip()
先将键值反转过来再进行计算:
prices = {
"ACME": 45.23,
"AAPL": 612.78,
"IBM": 205.55,
"HPQ": 37.20,
"FB": 10.75
}
min_price = min(zip(prices.values(), prices.keys()))
print(min_price) # (10.75, "FB")
max_price = max(zip(prices.values(), prices.keys()))
print(max_price) # (612.78, "AAPL")
关于zip()
函数:
zip(*iterables) # 参数传入一个或多个可迭代对象,返回一个 zip object
# 当传入一个可迭代对象时
zip1 = zip([1, 2])
print(list(zip1)) # [(1,), (2,)]
# 当传入多个可迭代对象时
zip2 = zip([1, 2], ["a", "b"], ["*", "/"])
print(list(zip2)) # [(1, 'a', '*'), (2, 'b', '/')]
# 当传入多个可迭代对象且不是所有的可迭代对象元素个数都相等时,以元素个数最少的可迭代对象为准
zip3 = zip("abc", [1, 2], "*")
print(list(zip3)) # [('a', 1, '*')]