我用python写了一个简单的程序,从列表中找到最大的数字。我的代码运行正常,但结果错误。
在我的列表中,总共有9位数字,而50位是最大的一位,但是我的程序显示的是3位数字
numbers = [1, 3, 10, 13, 2, 4, 6, 50, 9]
max = numbers[0]
for number in numbers:
if number > max:
max = number
print(max)
我的回答是
3
10
13
50
以退出代码0结束的过程
答案 0 :(得分:4)
您的代码现在只要发现一个比以前看到的最大数字大的数字,便会打印其结果。您希望它只打印整个列表中最大的一个。
仅在检查列表中的每个值之后才输出max
。
numbers = [1, 3, 10, 13, 2, 4, 6, 50, 9]
max = numbers[0]
for number in numbers:
if number > max:
max = number
print(max)
请注意,在检查完每个数字之后,如何将print(max)
移到循环之外。
答案 1 :(得分:1)
如上面的注释中所述,您可以简单地使用内置函数max
,该函数可以应用于列表以打印列表中最大的数字。
numbers = [1, 3, 10, 13, 2, 4, 6, 50, 9]
print(max(numbers))
# 50
答案 2 :(得分:0)
如果您想要列表的最大数量,则可以简单地使用numpy的max函数:
import numpy as np
numbers = [1, 3, 10, 13, 2, 4, 6, 50, 9]
max = np.max(numbers)
print(max)