Python 条件while循环不能正确反应

Python 条件while循环不能正确反应,python,while-loop,Python,While Loop,我试图用如下逻辑编写一个while循环: while enemy is alive and characters are alive: continue... 但是,每个字符的健康状况都绑定到单个变量/列表条目 因此,我: while enemydata[2] >0 and combatpartystats[0][1] >0 and combatpartystats[1][1] >0 and combatpartystats[2][1] >0 and comba

我试图用如下逻辑编写一个while循环:

while enemy is alive and characters are alive:
    continue...
但是,每个字符的健康状况都绑定到单个变量/列表条目

因此,我:

while enemydata[2] >0 and combatpartystats[0][1] >0 and combatpartystats[1][1] >0 and combatpartystats[2][1] >0 and combatpartystats[3][1] >0:
    continue...
然而,当四个角色中的任何一个生命值低于0时,循环就会中断

我只想在所有角色都死了或者敌人死了的时候,循环才会中断


我希望我已经很好地解释了我的问题,任何问题都可以问。

你差不多明白了。试试这个:

while enemydata[2] > 0 and (combatpartystats[0][1] > 0 or combatpartystats[1][1] > 0 or combatpartystats[2][1] > 0 or combatpartystats[3][1] > 0):
    continue...
只有当你的敌人死了或者所有的队友都死了,这个技能才会被打破。

而不是这样做

while enemydata[2] >0 and combatpartystats[0][1] >0 and combatpartystats[1][1] >0 and combatpartystats[2][1] >0 and combatpartystats[3][1] >0:

如果仅当上述所有语句均为true时,脚本才会继续,请将“and”语句更改为“or”,然后如果其中任何语句的计算结果为true,脚本将继续

尝试将您的and更改为ors,我认为它可以满足您的要求。

如果您希望在任一条件为真时继续循环,请使用
而不是
。请记住,如果两个操作数均为真,
为真,如果任一操作数均为真,
为真。你应该能从中找到原因。