【问题标题】: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)
  • 你还没说是什么问题。

标签: python max iterable


【解决方案1】:

您应该使用当前的maximum 和新号码拨打max

maximum = max(maximum, num)

【讨论】:

    【解决方案2】:

    使用三元运算符

    maximum = x if maximum < x else maximum
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-12-09
      • 2012-07-09
      相关资源
      最近更新 更多