Python:如果条件语句不打印我期望的内容

Python:如果条件语句不打印我期望的内容,python,conditional,Python,Conditional,我一直在编写此代码: print('Type any number or letter to start. ') begin = input() if begin != "Z" or 'z': print("Starting up!") elif begin == "Z" or "z": print("Except Z") 当我运行它时,我希望当我为输入键入“Z”时,它会打印消息“除了Z”。取而代之的是,它会打印“启动!”这似乎是非常违反直觉的。有人能找到我的问题在哪里吗?有几

我一直在编写此代码:

print('Type any number or letter to start. ')
begin = input()
if begin != "Z" or 'z':
    print("Starting up!")
elif begin == "Z" or "z":
    print("Except Z")

当我运行它时,我希望当我为输入键入“Z”时,它会打印消息“除了Z”。取而代之的是,它会打印“启动!”这似乎是非常违反直觉的。有人能找到我的问题在哪里吗?

有几种方法可以表达您在Python中的意思

print('Type any number or letter to start. ')
begin = input()
if begin == "z" or begin == "Z":
    print("Except Z")
else:
    print("Starting up!")
是第一位,

print('Type any number or letter to start. ')
begin = input()
if begin in ("z", "Z"):
    print("Except Z")
else:
    print("Starting up!")
这是另一种惯用方式

不管怎么说,原始代码中的问题是,
的优先级较低,因此就Python而言,它最终是

(or
   (begin != "Z")
   ("z")
)

而且
“z”
总是真实的。

啊,非常感谢你。这很有帮助。