Python max()和min()寻找极值

  • Post category:Python

当需要找出列表中的最大值或最小值时,Python提供了两个内置函数max()和min()。

max()函数

max()函数可以用于找出列表中的最大值。

语法

max(iterable, *[, key, default])

参数说明

  • iterable:可迭代对象,例如列表。
  • key(可选):用于比较的函数,接受一个参数并返回一个排序依据值。默认为None。
  • default(可选):如果可迭代对象为空,返回的值将是该参数的值。如果未提供此参数并且输入为空,将引发ValueError异常。

返回值

返回可迭代对象中的最大值。

示例

# 找出列表中的最大值
nums = [1, 2, 3, 4, 5]
max_num = max(nums)
print(max_num) # 5

# 使用key参数找到所有字符串中的最长字符串
strings = ["apple", "banana", "orange", "watermelon"]
longest_str = max(strings, key=len)
print(longest_str) # watermelon

# 处理空输入
empty_list = []
default_val = "default"
max_val = max(empty_list, default=default_val)
print(max_val) # default

min()函数

min()函数可以用于找出列表中的最小值。

语法

min(iterable, *[, key, default])

参数说明

  • iterable:可迭代对象,例如列表。
  • key(可选):用于比较的函数,接受一个参数并返回一个排序依据值。默认为None。
  • default(可选):如果可迭代对象为空,返回的值将是该参数的值。如果未提供此参数并且输入为空,将引发ValueError异常。

返回值

返回可迭代对象中的最小值。

示例

# 找出列表中的最小值
nums = [1, 2, 3, 4, 5]
min_num = min(nums)
print(min_num) # 1

# 使用key参数找到所有字符串中的最短字符串
strings = ["apple", "banana", "orange", "watermelon"]
shortest_str = min(strings, key=len)
print(shortest_str) # apple

# 处理空输入
empty_list = []
default_val = "default"
min_val = min(empty_list, default=default_val)
print(min_val) # default

注意:以上两个函数返回的结果与列表类型的输入参数是无关的,也就是说,不管是列表,元组或者集合等对象,返回值总是一个标量(数值或字符串)。