Python中的min()函数和max()函数如何获取列表最小值和最大值
发布时间:2023-05-23 05:53:51
Python中的min()函数和max()函数都可以用来获取列表中的最小值和最大值。
min()函数的语法如下:
min(iterable, *[, key, default])
其中,iterable参数表示要取最小值的可迭代对象,*表示可变的位置参数,key参数表示用来对比的函数,default参数表示当可迭代对象为空时返回的默认值。
对于一个列表而言,我们可以直接将列表作为iterable参数传递给min()函数,如下所示:
lst = [3, 1, 4, 5, 2] print(min(lst))
这样就会输出列表中的最小值1。如果我们还想比较列表中的元素的某个属性,可以通过key参数指定一个函数来实现。例如,我们有一个包含学生信息的列表,可以按照学生的年龄来获取最小值,代码如下:
students = [
{'name': 'Alice', 'age': 18},
{'name': 'Bob', 'age': 20},
{'name': 'Charlie', 'age': 22},
{'name': 'David', 'age': 19}
]
print(min(students, key=lambda x: x['age']))
这样就会输出{'name': 'Alice', 'age': 18},即年龄最小的学生。
max()函数的语法和min()函数的语法类似,只不过是获取最大值。例如,我们可以通过下面的代码获取列表的最大值:
lst = [3, 1, 4, 5, 2] print(max(lst))
这样就会输出列表中的最大值5。
和min()函数一样,如果我们还想按照列表中元素的某个属性来获取最大值,也可以使用key参数。例如,我们可以按照学生的成绩来获取最大值,代码如下:
students = [
{'name': 'Alice', 'score': 80},
{'name': 'Bob', 'score': 90},
{'name': 'Charlie', 'score': 85},
{'name': 'David', 'score': 70}
]
print(max(students, key=lambda x: x['score']))
这样就会输出{'name': 'Bob', 'score': 90},即成绩最高的学生。
总之,无论是获取列表中的最小值还是最大值,都可以通过min()函数和max()函数来实现。如果需要按照列表中元素的某个属性来获取最小值或最大值,可以使用key参数。
