【发布时间】:2015-07-16 21:10:08
【问题描述】:
我目前正在学习 Python 编程课程,我们被分配了一项任务,即通过提示用户找到最大的数字。 使用数组很容易完成,但我们无法将它们用于此分配。 我遇到一个问题,如果我输入一系列数字,例如“55、100、99”,我的程序会告诉我 99 是最高数字。我不确定出了什么问题。
largest = None
smallest = None
temp = None
while temp != "done":
num = raw_input("Enter a number: ")
if num == "done" :
break
try:
int(num)
except:
print ('That is not an integer. Try again')
break
print(largest)
if largest is None:
largest = num
if largest != None and num > largest:
largest = num
print ('Invalid input')
print "Maximum is", largest
print "Minimum is", smallest
【问题讨论】:
-
您需要将
num转换为整数,然后再与largest进行比较。 -
int(num)本身并没有我猜你认为的那样。之后尝试type(num);惊讶吗? Python 是强类型,你不能就地转换。 -
您没有将
num到int的转换分配给任何变量 -
你也可以
if largest is None or num > largest:and忘记其他的如果
标签: python if-statement numbers highest