用户输入永远不会与特定值匹配,这是怎么回事?


coin1 = raw_input("Coin1: ")
while coin1 != (10, 20, 50, 100):
    print "That is not a correct coin value"
    coin1 = raw_input("Coin1: ")

这段代码应该要求用户为变量"coin1"输入一个值,检查该值是否等于10、20、50或100,如果它不等于这些数字中的任何一个,它应该告诉你这是一个"不正确的硬币值",并要求你为变量"coin1"输入另一个值。

它让我输入一个值,但无论我输入什么,它都不接受这个值,它只是告诉我这是一个"不正确的硬币价值"。

我已经试了好几个小时了,我真的不知道哪里出了问题,而且我是Python的初学者。你们有人能帮忙吗?

用户的输入将被Python视为字符串,而不是整数。对于!=,您也将coin1int值的元组进行比较,它永远不会等于(再次,coin1将是一个字符串)。

检查用户输入的coin1是否是可接受的硬币值之一:

while coin1 not in ("10", "20", "50", "100"):
    ...

修改如下:

while coin1 != (10, 20, 50, 100)

:

while coin1 not in ['10', '20', '50', '100']

最新更新