0

我正在使用 python 3.2.3 idle 这是我的代码:

number = input("please enter 1 or 2")
if number != 1 or 2: #this part is wrong
     print("You didn't enter 1 or 2")

我的代码不正确。我想这样做,如果用户不输入 1 或 2,则会弹出错误。说他们输入 1.5、3 等或不是 1.0 或 2.0 的东西。

我如何使用!=命令来做到这一点?

4

3 回答 3

6

问题是代码被解析为

if ((number != 1) or 2):

2,非零,始终为真。

相反,我会建议

if number not in (1, 2):
于 2012-12-17T19:51:06.110 回答
3

您始终可以使用in/ not in

if number not in (1,2):

不要忘记从你的数字中创建一个整数......

number = int(input("please enter 1 or 2"))

您的代码将永远不会给出True结果,因为您正在将字符串与整数进行比较(它总是不相等的)。

于 2012-12-17T19:51:15.867 回答
1

你可以试试这个:

if number!=1 and number!=2
于 2012-12-17T19:54:01.627 回答