跳到主要内容

Python min() 函数

min() 函数返回可迭代对象中最小的元素。它也可用于在两个或更多参数之间找到最小的元素。

示例

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

# 找到最小的数字
min_number = min(numbers)
print(min_number)

# 输出: -4

min() 函数有两种形式:

# 在可迭代对象中找到最小的元素
min(iterable, *iterables, key, default)

# 在两个或多个对象中找到最小的元素
min(arg1, arg2, *args, key)

1. 带有可迭代参数的 min()

min() 语法

以下是 min() 函数的语法:

min(iterable, *iterables, key, default)

min() 参数

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

min() 返回值

min() 返回可迭代对象中最小的元素。

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

number = [3, 2, 8, 5, 10, 6]
smallest_number = min(number);

print("最小的数字是:", smallest_number)

输出

最小的数字是: 2

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

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

languages = ["Python", "C Programming", "Java", "JavaScript"]
smallest_string = min(languages);

print("最小的字符串是:", smallest_string)

输出

最小的字符串是: C Programming

在字典的情况下,min() 返回最小的键。让我们使用 key 参数,这样我们可以找到字典中键值最小的键。

示例 3:字典中的 min()

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

# 最小的键
key1 = min(square)
print("最小的键:", key1) # -2

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

print("键值最小的键:", key2) # -1

# 获取最小的值
print("最小的值:", square[key2]) # 1

输出

最小的键: -2
键值最小的键: -1
最小的值: 1

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

key = lambda k: square[k]

该函数返回字典的值。基于这些值(而不是字典的键),计算出具有最小值的键。

几点注意事项:

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

2. 没有可迭代对象的 min()

min() 语法

以下是 min() 函数的语法:

min(arg1, arg2, *args, key)

min() 参数

  • arg1 - 一个对象;可以是数字、字符串等。
  • arg2 - 一个对象;可以是数字、字符串等。
  • *args (可选) - 任意数量的对象。
  • key (可选) - 键函数,将每个参数传递给它,根据其返回值执行比较。

基本上,min() 函数可以在两个或多个对象之间找到最小的项目。

min() 返回值

min() 返回传递给它的多个参数中的最小参数。

示例 4:找到给定数字中的最小值

result = min(4, -5, 23, 5)
print("最小的数字是:", result)

输出

最小的数字是 -5

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