Python中内置函数max()
主要用于求取一个可迭代对象中的最大值。可迭代对象包括列表、元组、集合以及其他实现了可迭代接口的对象。
语法
max(iterable, *[, default=obj, key=func])
- iterable – 可迭代对象,例如列表、元组、集合等。
- default – 如果所有值都为空、None或标识为函数默认,则将其返回。默认为None。
- key – 用于根据给定的键函数计算可迭代对象中的每个元素的价值,从而返回最大元素。默认为 None,使用元素自身的值进行比较。
返回值
返回可迭代对象中的最大值或者default。
示例
# 列表中最大的数字
numbers = [10, 20, 30, 40, 50]
print(max(numbers)) # 50
# 字符串中最大的字符
string = "hello world"
print(max(string)) # w
# 字典中最大的元素
dict_ = {'a': 1, 'b': 2, 'c': 3}
print(max(dict_)) # c
# 使用key函数进行比较
words = ["be", "bee", "been", "being"]
print(max(words, key=len)) # being
注意:使用max()函数时,其中的比较依赖于对待比较的数据类型。例如,对于字符串类型和数字类型,比较行为是不同的。在比较不同数据类型时,需要特别注意。
代码示例:
# 比较不同数据类型
print(max(10, "20")) # TypeError: '>' not supported between instances of 'str' and 'int'
# 指定默认值
print(max([], default=0)) # 0
# 指定使用len()函数进行比较
print(max(["be", "bee", "been", "being"], key=len)) # being