【问题标题】:Python: How do I write a program that reads 10 different integers and prints the one that has the largest value? [closed]Python:我如何编写一个程序来读取 10 个不同的整数并打印出具有最大值的那个? [关闭]
【发布时间】:2015-11-24 10:32:41
【问题描述】:

在python中,什么是可以用来读取列表中最大数字的方法?我的尝试如下:

list = [a, b, c, d, e, f, g, h, i, j]
print max(list)

编辑(解决方案):使用 for 循环。

userInput = []
for i in range(10):
    userInput.append(int(input("Enter a number")))
print(max(userInput))

【问题讨论】:

标签: python list python-3.x integer


【解决方案1】:

如果你想重复做某事,你可以使用循环。您希望有一个空列表,然后从用户那里获取一个数字 10 次,因此您将来自用户的所有对数字的请求放在一个循环中。 input 给你一个字符串,所以你需要把它转换成一个int

user_inputs = []

for i in range(10):
    user_inputs.append(int(input("Enter a number")))

print(max(user_inputs))

如果你不了解循环,你应该学习一下。

【讨论】:

  • list 是变量名的糟糕选择。
  • 问题被标记为python-3.x,所以raw_input 不起作用。
【解决方案2】:

我认为与 JHobern 一起,您可能会做类似的事情

print(max([int(raw_input("Enter a number: ")) for x in range(10)]))

应该这样做! 解释一下,你知道 print 和 max 应该做什么。 raw_input 要求用户输入并存储它。 max() 返回事物列表中的最大值。 [ ______ for x in range(10)] 是一个列表理解,它做了 10 次。但在这种情况下不一定使用变量 x 。 所以基本上,我使用列表推导来创建一个包含 10 个整数的列表,该列表提供给用户,然后在一行中打印出最大值:)

【讨论】:

  • raw_input() 未在 Python 3 中使用。
  • @TigerhawkT3 啊!哎呀。对于那个很抱歉。只需输入()然后
【解决方案3】:

您可以使用while loop 来实现此目的: 此代码将提示用户 10 次输入数字。每次将号码附加到列表nums。此外,每次都会打印nums 中的最大数字。

nums = []
while len(nums) < 10:
    nums.append(int(input('Enter a number: ')))
    print (max(nums))

如果您只想在第 10 次输入之后打印最后的最高数字一次,那么您可以这样做:

nums = []
while len(nums) < 10:
    nums.append(int(input('Enter a value: ')))
print (max(nums))

您不应该使用list 作为变量,因为listbuilt in function

【讨论】:

  • 这将打印最大值 9 次。
  • @BurhanKhalid 它打印了 10 次
  • 更糟糕的是,它应该打印一次。
  • @BurhanKhalid 我故意想在每次输入后打印它,正如我在回答中提到的那样。但是,我将进行编辑并提供一个仅在最后打印的选项。
  • raw_input() 未在 Python 3 中使用。
猜你喜欢
  • 1970-01-01
  • 2023-02-07
  • 1970-01-01
  • 1970-01-01
  • 2022-10-24
  • 2022-01-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多