Returns 意外值
Returns unexpected value
我为我正在参加的在线课程编写了这段代码,您无法 post 编写代码并在那里获得特定帮助。我希望这里有人会有所帮助。
代码 -
largest = None
smallest = None
numI = 0
while True:
num = raw_input("Prompt you")
if num == "done":
break
try:
numI = int(num)
except:
print "Invalid input"
continue
if numI >= largest or numI < smallest:
if numI > largest:
largest = numI
else:
smallest = numI
print "Maximum is",largest
print "Minimum is",smallest
为什么会 return "Minimum is None"?
我尝试了两个 If 循环,一个 If 和 Elif,现在是这个嵌套循环。无论我似乎没有达到最小值的设置。
非常感谢任何帮助。
(代码已上交并评级,所以你不能破坏那部分:))
x < None 将始终 return 为假,因此在您的 While True:
语句中您需要添加
if largest==None:
largest=numI
if smallest==None:
smallest=numI
代码:
largest = None
smallest = None
numI = 0
while True:
num = raw_input("Prompt you")
if num == "done":
break
try:
numI = int(num)
except:
print "Invalid input"
continue
if largest==None:
largest=numI
if smallest==None:
smallest=numI
if numI > largest or numI < smallest:
if numI > largest:
largest = numI
else:
smallest = numI
print "Maximum is",largest
print "Minimum is",smallest
注意使用 print('Maximum is ' + str(largest))
是一种很好的做法,因为它与 3.4
交叉兼容
在python2中,None
小于一切。所以你的 numI < smallest
条件永远不会通过。您应该显式测试 None,以便 numI
设置为初始传递中的第一个值,然后它可以正常更新。
此外,您应该只使用两个独立的检查:
if largest is None or numI > largest:
largest = numI
if smallest is None or numI < smallest:
smallest = numI
我为我正在参加的在线课程编写了这段代码,您无法 post 编写代码并在那里获得特定帮助。我希望这里有人会有所帮助。 代码 -
largest = None
smallest = None
numI = 0
while True:
num = raw_input("Prompt you")
if num == "done":
break
try:
numI = int(num)
except:
print "Invalid input"
continue
if numI >= largest or numI < smallest:
if numI > largest:
largest = numI
else:
smallest = numI
print "Maximum is",largest
print "Minimum is",smallest
为什么会 return "Minimum is None"? 我尝试了两个 If 循环,一个 If 和 Elif,现在是这个嵌套循环。无论我似乎没有达到最小值的设置。
非常感谢任何帮助。
(代码已上交并评级,所以你不能破坏那部分:))
x < None 将始终 return 为假,因此在您的 While True:
语句中您需要添加
if largest==None:
largest=numI
if smallest==None:
smallest=numI
代码:
largest = None
smallest = None
numI = 0
while True:
num = raw_input("Prompt you")
if num == "done":
break
try:
numI = int(num)
except:
print "Invalid input"
continue
if largest==None:
largest=numI
if smallest==None:
smallest=numI
if numI > largest or numI < smallest:
if numI > largest:
largest = numI
else:
smallest = numI
print "Maximum is",largest
print "Minimum is",smallest
注意使用 print('Maximum is ' + str(largest))
是一种很好的做法,因为它与 3.4
在python2中,None
小于一切。所以你的 numI < smallest
条件永远不会通过。您应该显式测试 None,以便 numI
设置为初始传递中的第一个值,然后它可以正常更新。
此外,您应该只使用两个独立的检查:
if largest is None or numI > largest:
largest = numI
if smallest is None or numI < smallest:
smallest = numI