为什么我总是收到错误 "min() arg is an empty sequence"?
Why do I keep getting the error "min() arg is an empty sequence"?
我有以下代码:
test_file = open("test.txt","r")
numbers = test_file.readlines()
numbers = map(int,numbers)
print("Maximum number in list:", max(numbers))
print("Minimum number in list:", min(numbers))
test_file.close()
你能帮帮我吗,因为我一直收到错误消息:min() arg 是一个空序列。 (我把数字15、30、4、9、41、76、32写到文件里了,他们在不同的行)。
我得到这个输出:
Maximum number in list: 76
Traceback (most recent call last):
File "\student-server\users$fvarela\Documents\YEAR
9\CS\Notes\PYTHON\test.py", line 5, in <module>
print("Minimum number in list:", min(numbers))
ValueError: min() arg is an empty sequence
你的numbers
numbers = map(int,numbers)
是一个迭代器(在 python 3 中;在 python 2 中你会得到一个列表,一切都会按预期工作);当您应用 max(numbers)
时,您会耗尽迭代器; min
不再需要迭代(即 min
会抱怨空序列)。
如果您的号码列表足够短,您可以通过
解决这个问题
numbers = tuple(map(int,numbers))
您可以将地图转换为列表:
numbers = list(map(int,numbers))
我有以下代码:
test_file = open("test.txt","r")
numbers = test_file.readlines()
numbers = map(int,numbers)
print("Maximum number in list:", max(numbers))
print("Minimum number in list:", min(numbers))
test_file.close()
你能帮帮我吗,因为我一直收到错误消息:min() arg 是一个空序列。 (我把数字15、30、4、9、41、76、32写到文件里了,他们在不同的行)。
我得到这个输出:
Maximum number in list: 76
Traceback (most recent call last):
File "\student-server\users$fvarela\Documents\YEAR
9\CS\Notes\PYTHON\test.py", line 5, in <module>
print("Minimum number in list:", min(numbers))
ValueError: min() arg is an empty sequence
你的numbers
numbers = map(int,numbers)
是一个迭代器(在 python 3 中;在 python 2 中你会得到一个列表,一切都会按预期工作);当您应用 max(numbers)
时,您会耗尽迭代器; min
不再需要迭代(即 min
会抱怨空序列)。
如果您的号码列表足够短,您可以通过
解决这个问题numbers = tuple(map(int,numbers))
您可以将地图转换为列表:
numbers = list(map(int,numbers))