【发布时间】:2016-03-25 17:43:29
【问题描述】:
以下是我错误地计算 的代码。大约 3X 给 raw_input 它将执行值 12
largest = None
smallest = None
while True:
num = raw_input("Enter a number: ")
if num == "done" : break
try:
float(num)
except ValueError:
print "Invalid input"
break
float(num)
if largest is None:
largest = num
float(largest)
if smallest is None:
smallest = num
float(largest)
if num > largest:
largest = num
float(largest)
if num < smallest:
smallest = num
float(smallest)
print num
print "Maximum", largest
print "Minimum", smallest
【问题讨论】:
-
“做值 12
-
你不是在比较
12 < 4;你在比较"12" < "4" -
另外,只是说
float(smallest)不会改变smallest。你需要做smallest = float(smallest)。 -
@zondo 是正确的。在您的情况下,如果您只是将 try 块修改为
try: num = float(num),那么我认为您不必进行任何其他更改。只是你可以删除所有的 float() 调用。
标签: python floating-point