📜  在Python中使用 min() 和 max()(1)

📅  最后修改于: 2023-12-03 15:37:37.576000             🧑  作者: Mango

在Python中使用min()max()

min()max()是Python内建函数,分别用于取得列表或元组中的最小值和最大值。它们都支持任何可迭代的对象(如列表、元组、字符串、字典、集合等),并且都可以接收一个key参数,用于自定义比较函数。

使用方法
min()

min()函数可以接受任意数量的参数,并返回它们中的最小值。例如:

numbers = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
print(min(numbers)) # 1

words = ['apple', 'banana', 'cherry', 'durian']
print(min(words, key=len)) # apple

在第二个例子中,我们使用了key参数来指定比较函数,告诉min()函数在比较字符串时应该使用长度而不是默认的字典序。

min()也可以用于获取字典中最小(或最大)的键值对:

d = {'apple': 3, 'banana': 1, 'cherry': 4}
print(min(d.items(), key=lambda x: x[1])) # ('banana', 1)

在这个例子中,我们使用了一个lambda表达式来告诉min()函数,我们想要通过value值来比较字典项。

max()

max()min()的使用方法基本相同,只不过是返回最大值而不是最小值。例如:

numbers = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
print(max(numbers)) # 9

words = ['apple', 'banana', 'cherry', 'durian']
print(max(words, key=len)) # cherry

同样,max()也支持字典的使用:

d = {'apple': 3, 'banana': 1, 'cherry': 4}
print(max(d.items(), key=lambda x: x[1])) # ('cherry', 4)
总结

min()max()是常用的Python函数,它们能够方便地获取列表、元组、字典等可迭代对象中的最小值和最大值。通过key参数,我们还可以自定义比较函数,从而实现更为灵活的比较。

值得注意的是,如果我们要获取字符串中最大(或最小)的字母,可以使用ord()函数将字母转换为对应的数值,例如ord('a') == 97。这样就可以在比较字符串时,按照ASCII码进行比较。