【发布时间】:2020-11-22 23:06:07
【问题描述】:
在学习 python 的时候就必须这么早问问题,我觉得很愚蠢,但任务是这样的:
编写一个程序,反复提示用户输入整数,直到用户输入“完成”。输入“完成”后,打印出最大和最小的数字。如果用户输入的不是有效数字,请使用 try/except 捕获它,并发出适当的消息并忽略该数字。输入 7、2、bob、10 和 4 并匹配下面的输出。
我还没有开始尝试/排除部分,但使用我当前的代码,它似乎只运行一次完整循环,然后卡在最大数字检查上。
largest = None
smallest = None
while True:
num = input("Enter a number: ")
if num == "done" : break
if largest is None or num > largest :
largest = num
print("large", largest)
if smallest is None or num < smallest :
smallest = num
print("small", smallest)
print("Minimum is", smallest)
print("Maximum is", largest)
我得到的输出只是将第一个数字作为最小值,将最后一个数字作为最小值。
Enter a number: 10
Enter a number: 17
Enter a number: 20
Enter a number: 3
Enter a number: 6
Enter a number: done
Minimum is 10
Maximum is 6
我很难过任何帮助将不胜感激。
【问题讨论】:
标签: python-3.x while-loop