elif(mud == 1 and game_select == 'Mud + Fire' or game_select == 'Fire + Mud'):
do something
当game_select =='Mud + Fire'时,如果mud!= 1则不运行,但是无论当game_select =='Fire + Mud'时,它都运行。
答案 0 :(得分:3)
尝试此操作,您需要以正确的方式包装and语句。
elif(mud == 1 and (game_select == 'Mud + Fire' or game_select == 'Fire + Mud')):
do something
答案 1 :(得分:0)
Python evaluates or
before it evaluates and
-这意味着它的读法是“如果mud为1且字符串与mud and fire相匹配,则为真。或者,如果字符串与fire and mud相匹配,则为true。”
您可以通过用括号正确分割语句来解决此问题:
elif(mud == 1 and (game_select == 'Mud + Fire' or game_select == 'Fire + Mud')):
do something
读作“如果泥是一个,并且字符串匹配火和泥或火和泥,那是真的。”