如果输入的下一个数字是Up,Down或与第一个相同,我希望创建一个输出代码。我希望它在输入“0”时退出。我还希望它在退出时以“0”而不是每次输入数字时打印“向上”,“向下”或“相同”结果。(如果用户输入:4,6,1,1 ,然后0退出,最终输出将是Up,Down,同样打印。)请告诉我我错过了什么,这是我到目前为止:
firstNumber = input('Please enter your first number:')
nextNumber=input('Enter the next number(0 to finish)')
while nextNumber !=0:
if firstNumber<nextNumber:
print ('Up')
elif firstNumber>nextNumber:
print ('Down')
elif firstNumber==nextNumber:
print ('Same')
firstNumber = nextNumber
nextNumber=input('Enter the next number(0 to finish)')
答案 0 :(得分:2)
您正在比较字符串,而不是数字。
您应该将输入转换为int()
的整数。
这里:
try:
firstNumber = int(input('Please enter your first number:'))
nextNumber = int(input('Enter the next number(0 to finish)'))
except ValueError:
# Handle cast error here
pass
while nextNumber !=0:
...
注意强>
正如blubberdiblub所解释的那样:
<
>
比较字符串的指针代码,表示"8" < "10"
返回False
而8 < 10
返回True
答案 1 :(得分:0)
<强>输入强>
然后函数从输入中读取一行,将其转换为字符串(剥离尾部换行符),然后返回该行。
所以使用
int(input(...))