如何找到可迭代的最大值? [关闭]
Posted
技术标签:
【中文标题】如何找到可迭代的最大值? [关闭]【英文标题】:How to find the maximum value of an iterable? [closed] 【发布时间】:2021-01-14 10:40:13 【问题描述】:在我看来,除了max
函数之外,所有这些代码都在工作,不知道如何解决这个问题..
提示是:
编写一个重复读取数字直到用户输入“完成”的程序。 输入“完成”后,打印出总数、计数、平均值和最大值。
这是我的代码:
total = 0
count = 0
average = 0
maximum = 0
while True:
x = raw_input("Enter A Number: ")
try:
num = int(x)
total += num
count += 1
average = total/count
maximum = max(x)
except ValueError:
print("Total: ", total)
print("Count: ", count)
print("Average: ", average)
print("Maximum: ", maximum)
break
【问题讨论】:
你传递的迭代是一个字符串,所以它只会返回最高的字符值。你需要把这个maximum = max(x)
改成这个maximum = max(maximum, num)
How to debug small programs.
你还没说是什么问题。
【参考方案1】:
您应该使用当前的maximum
和新号码拨打max
:
maximum = max(maximum, num)
【讨论】:
【参考方案2】:使用三元运算符
maximum = x if maximum < x else maximum
【讨论】:
以上是关于如何找到可迭代的最大值? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章