我是新手,我正在用Python做经典的井字游戏, 我想在if中使用多个变量,例如:
if boarda[1],boarda[2],boarda[3]='X':
print ('player X wins)
输出为语法错误,可以这样做吗?如果是我该怎么写呢?非常感谢
我要检查and
和or
,因此重复项无效。
答案 0 :(得分:1)
好吧,您始终可以做到直观
if boarda[1] == 'X' or boarda[2] == 'X' or boarda[3] == 'X'
但是更好的解决方法是使用in
运算符:
if 'X' in (boarda[1], boarda[2], boarda[3])
对于长列表,您可能需要列表理解:
if 'X' in [boarda[x] for x in range(1, 4)]
要检查and
,就更容易了:
if boarda[1] == boarda[2] == boarda[3] == 'X'
对于任意类型:
vals = (boarda[1], boarda[2], boarda[3])
if all(v == 'X' for v in vals)