Python 3.x “多重”;或;“中的条件”;“while循环”;

Python 3.x “多重”;或;“中的条件”;“while循环”;,python-3.x,while-loop,Python 3.x,While Loop,我正在做一个学校项目(21点游戏) 目前我正在制作“热门”展台。。。玩家拥有的选项 我不是Python大师,但我非常确信这应该是可行的 请看一下,告诉我哪里出了问题 在调试过程中,我可以看到在“While”循环中“playerChoice”的值是正确的 playerChoice = '' while playerChoice != 'split' or playerChoice != 'stand' or playerChoice != 'hit' or playerChoice != 'd

我正在做一个学校项目(21点游戏) 目前我正在制作“热门”展台。。。玩家拥有的选项

我不是Python大师,但我非常确信这应该是可行的

请看一下,告诉我哪里出了问题

在调试过程中,我可以看到在“While”循环中“playerChoice”的值是正确的

playerChoice = ''

while playerChoice != 'split' or playerChoice != 'stand' or playerChoice != 'hit' 
or playerChoice != 'double down':
    playerChoice = input('(split, stand, hit, double down) : ')
我希望当其中一条语句为false时,我们应该退出“while”循环并继续执行代码,但是不管响应如何,循环都会继续


我知道我可以在循环中想出某种“刹车”,但我想知道为什么这不起作用。

而playerChoice.lower().strip()不在['split','stand','hit','double down']
:混合
和负片,意味着条件总是正确的<代码>播放选择!='“拆分”或“玩家选择”stand'
如果选择是
split
,那么
stand
并不是使
作为一个整体成为真正的.Net解决方案的原因,谢谢!你能告诉我为什么我的不做应该做的吗?你的情况总是以
bool或bool或bool或bool
表达式计算。因此,如果其中任何一个是
True
,循环将继续。您需要的是一个条件,如果其中任何一个条件为false,则该条件将退出。@TsvetomirBatinov或只需切换您的
=
==
。这样读起来可能比将
更改为
更好。此外,要在注释中编写内联代码,请使用backtick(tab键上方的一个)。还考虑使用DaviZeMeN符号,因为它更可读。