跳到主要内容

Python max() 函数

max() 函数返回可迭代对象中的最大项。它还可用于在两个或多个参数之间找到最大项。

示例

numbers = [9, 34, 11, -4, 27]

# 查找最大数字
max_number = max(numbers)
print(max_number)

# 输出: 34

max() 函数有两种形式:

# 在可迭代对象中找到最大项
max(iterable, *iterables, key, default)

# 在两个或多个对象之间找到最大项
max(arg1, arg2, *args, key)

1. 带可迭代参数的 max()

max() 语法

要找到可迭代对象中的最大项,我们使用以下语法:

max(iterable, *iterables, key, default)

max() 参数

  • iterable - 一个可迭代对象,如列表、元组、集合、字典等。
  • *iterables (可选) - 任意数量的可迭代对象;可以不止一个
  • key (可选) - 关键函数,其中传递可迭代对象,并根据其返回值进行比较
  • default (可选) - 如果给定的可迭代对象为空,则为默认值

max() 返回值

max() 返回可迭代对象中的最大元素。

示例 1:获取列表中的最大项

number = [3, 2, 8, 5, 10, 6]
largest_number = max(number);

print("最大数字是:", largest_number)

输出

最大数字是: 10

如果可迭代对象中的项目是字符串,则返回按字母顺序排列的最大项。

示例 2:列表中最大的字符串

languages = ["Python", "C Programming", "Java", "JavaScript"]
largest_string = max(languages);

print("最大的字符串是:", largest_string)

输出

最大的字符串是: Python

对于字典,max() 返回最大的键。让我们使用 key 参数来找到具有最大值的字典键。

示例 3:字典中的 max()

square = {2: 4, -3: 9, -1: 1, -2: 4}

# 最大键
key1 = max(square)
print("最大键:", key1) # 2

# 值最大的键
key2 = max(square, key = lambda k: square[k])

print("值最大的键:", key2) # -3

# 获取最大值
print("最大值:", square[key2]) # 9

输出

最大键: 2
值最大的键: -3
最大值: 9

在第二个 max() 函数中,我们传递了一个 lambda 函数key 参数。

key = lambda k: square[k]

该函数返回字典的值。根据值(而不是字典的键),返回具有最大值的键。

注释:

  • 如果我们传递一个空的迭代器,将引发 ValueError 异常。为了避免这种情况,我们可以传递 default 参数。
  • 如果我们传递了多个迭代器,将返回给定迭代器中的最大项。

2. 不带可迭代的 max()

max() 语法

要在两个或多个参数之间找到最大对象,我们可以使用以下语法:

max(arg1, arg2, *args, key)

max() 函数的参数

  • arg1 - 一个对象;可以是数字、字符串等。
  • arg2 - 一个对象;可以是数字、字符串等。
  • *args(可选)- 任意数量的对象
  • key(可选)- 一个关键函数,每个参数都会传递给它,比较操作基于其返回值进行

基本上,max() 函数用于找出两个或多个对象之间的最大项。

max() 函数的返回值

max() 返回传递给它的多个参数中最大的一个。

示例 4:找出给定数字中的最大值

# 找出参数中的最大值
result = max(4, -5, 23, 5)
print("最大的数字是:", result)

输出

最大的数字是:23

如果您需要找到最小的项,可以使用 Python min() 函数。