为什么这两个变量没有得到新值?

时间:2016-07-10 17:45:07

标签: python python-2.7

我试图在下面的代码中为两个起始变量赋值,并在必要时更改它们(首先是if和elif),但最小的变为字符串"已完成&#34 ;而最大的保持不变。我错过了什么?

非常感谢

largest = 0
smallest = 999
while True:
    num = raw_input("Enter a number: ")
    if largest > num:
        largest = num
    elif smallest < num: 
        smallest = num
    try:
        num = int(num)
    except ValueError:
        print "Invalid input"
    if num == "done" : break


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

按照以下建议编辑代码:

largest = None
smallest = None
while True:
num = raw_input("Enter a number: ")

try:
    num = int(num)
    if num > largest:
        largest = num
    elif smallest < num: 
            smallest = num

except ValueError:
    print "Invalid input"
if num == "done" : break


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

现在它正确运行

0 个答案:

没有答案