Python如果语句不起作用

时间:2017-04-28 00:28:41

标签: python if-statement

print("Hello World")
myName = input("What is your name?")
myVar = input("Enter a number:")
if myName == "MZ" or myVar != 0:
    print("MZ is great")
elif myName == "MV":
    print("MV is ok")
else:
    print("Hello World")

无论我输入的名称是 myName 还是数字 myVar ,它始终会打印MZ is great

请帮忙。感谢

2 个答案:

答案 0 :(得分:4)

首先,MZ很棒!

这是因为or myVar != 0。由于input()返回一个字符串(在Python 3中)并将其与数字进行比较,因此myVar将永远不会等于数字0.您应该执行以下操作:

myVar = int(input("Enter a number:"))

如果用户键入了错误的号码,您也应该抓住ValueError

答案 1 :(得分:3)

更改

if(myName == "MZ" or myVar != 0)

if(myName == "MZ" or myVar != "0")

默认情况下,用户输入为字符串。