首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Coursera Python for everybody ex 5.2

Coursera Python for everybody ex 5.2
EN

Stack Overflow用户
提问于 2020-06-10 02:54:52
回答 7查看 21.7K关注 0票数 0

对于下列问题:

编写一个程序,反复提示用户输入整数,直到用户进入done

输入“完成”后,打印出最大和最小的数字。

如果用户输入有效数字以外的任何内容,则使用try/ out捕获该数字,并发出适当的消息并忽略该数字。

投入案例:

输入7、2、bob、10和4,并匹配下面的输出。

我的程序没有正确显示ans。这里有什么问题?

代码语言:javascript
复制
while True:
inp = input("Enter number: ")

if inp == "done":
    print("done")
    break
try:
    inp_data = int(inp)
except:
    print("Invalid input")
if smallest is None:
    smallest = inp_data
elif inp_data < smallest:
    smallest = inp_data
elif inp_data > largest:
    largest = inp_data
    
print("largest", largest)
print("smallest", smallest)

输出:

输入无效,最大为10,最小为2。

EN

回答 7

Stack Overflow用户

发布于 2020-08-18 07:03:03

您在打印输出时遗漏了几个语句。

下面的代码对我有效。

代码语言:javascript
复制
largest = None
smallest = None

while True:
    num = input("Enter a number: ")
    if num == "done":
        break
    try:
        #print(num)
        num = int(num)
        if largest is None or largest < num:
            largest = num
        elif smallest is None or smallest > num :
            smallest = num
    except ValueError:
        print("Invalid input")
        continue

print("Maximum is", largest)
    
print("Minimum is", smallest)

已验证并成功运行。

票数 2
EN

Stack Overflow用户

发布于 2021-12-30 13:45:40

代码语言:javascript
复制
largest = None
smallest = None
while True:
    num = input("Enter a number: ")
    if num == "done":
        break
    try:
        num = int(num)
    except:
        print("Invalid input")
        continue 
   
    if largest==None or num > largest:
        largest = num
    elif smallest==None or smallest > num:
        smallest = num

print("Maximum is", largest)
print("Minimum is", smallest)
票数 1
EN

Stack Overflow用户

发布于 2020-09-15 14:04:24

试试这段代码,稍后再谢谢我

代码语言:javascript
复制
largest = None
smallest = None
while True:
    val = input("Enter a number: ")
    if val == "done":
        break
    try:
        val = int(val)
        if largest is None or val > largest:
            largest = val
        elif smallest is None or smallest > val:
            smallest = val
    except:
        print("Invalid input")
        continue
print("Maximum is", largest)
print("Minimum is", smallest)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62295062

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档