【发布时间】:2020-04-21 21:30:36
【问题描述】:
我是这里的新手,目前正在尝试制作井字游戏,在这个特殊的 if 语句中,我的“或”不知何故弄乱了循环,无论输入如何,它都会永远持续下去。一旦我删除它并传递所需的参数,一切都会恢复原状。这是sn-p:
def player_input():
'''Takes in an "X" or "O" as player's input'''
while True:
player1 = str(input("Player 1: please choose 'X' or 'O': "))
if player1.lower() != 'o' or player1.lower() != 'x':
continue
return player1
提前感谢所有答案!
【问题讨论】:
-
这段代码的目的是什么?为什么你有
return? -
你想要
and;不管player1是什么,都不能同时是x和o。 -
对不起,这是函数的一部分,我将整个序列添加到 OP 中
-
认为它应该是而不是逻辑。例如,如果一个人输入 'o',那么它将继续,因为值 != 'x'。
-
哦该死的,在这里我认为没有什么比简单的逻辑更容易的了……谢谢,它成功了!
标签: python if-statement boolean