Python 中 ValueError: min() arg is an empty sequence 错误
当我们将空序列传递给 min() 函数时,会出现 Python“ValueError: min() arg is an empty sequence”。 要解决该错误,请在调用 min() 函数时提供默认关键字参数,例如 result = min(my_list, default=0)。
下面是一个产生上述错误的示例
my_list = []
# ⛔️ ValueError: min() arg is an empty sequence
result = min(my_list)
我们向导致错误的 min() 函数传递了一个空列表。
解决该错误的一种方法是在调用 min() 函数时提供默认关键字参数。
my_list = []
result = min(my_list, default=0)
print(result) # 👉️ 0
如果 0 不适合我们的用例,还可以指定 None 值。
my_list = []
result = min(my_list, default=None)
print(result) # 👉️ None
如果序列不为空,则返回最小值。
my_list = [3, 5, 8]
result = min(my_list, default=None)
print(result) # 👉️ 3
我们还可以使用 try/except 块来处理错误。
my_list = []
try:
result = min(my_list)
except ValueError:
# 👉️ handle error here
result = 0
print(result) # 👉️ 0
min 函数返回可迭代对象中的最小项或两个或多个参数中最小的一个。
my_list = [10, 5, 20]
result = min(my_list)
print(result) # 👉️ 5
该函数还可以传递两个或多个位置参数。
result = min(10, 5, 20)
print(result) # 👉️ 5
该函数采用可选的默认关键字参数,用于指定在提供的可迭代对象为空时返回的值。
result = min([], default=0)
print(result) # 👉️ 0
如果可迭代对象为空且未提供 default 关键字参数,则该函数会引发 ValueError。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布,任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站。本站所有源码与软件均为原作者提供,仅供学习和研究使用。如您对本站的相关版权有任何异议,或者认为侵犯了您的合法权益,请及时通知我们处理。