繁体   English   中英

如何编写while循环以使其在2个变量获得某些值时停止? (Python)

[英]How can I write while loop in order to make it stop when 2 variables got certain values? (Python)

我有以下代码(在 Python 中):

while i != 0 and j != 0:
  possibAct, posX, posY = possibleActions(i, j)
  i, j = constructValueFunction_GetOptimalAction(possibAct, posX, posY)
  possibAct, i, j = possibleActions(i, j)

似乎只有一个(i 或 j)为 0 时它会停止,但我想要的是让它只有在两者都为 0 时才停止。我错过了什么?

你可以给或像这样:

while i!=0 or j!=0:
   (some code)

当 i 为 0 时,j 可能不为 0,所以它等待 j 变为 0

使用您当前的代码,当 i,j 中的任何一个为 i.=0 并且 j,=0 变为 False 时,循环将中断:您需要类似以下内容,以便仅当 i 和 j 都变为 0 时才停止循环:

while not (i == 0 and j == 0):
  possibAct, posX, posY = possibleActions(i, j)
  i, j = constructValueFunction_GetOptimalAction(possibAct, posX, posY)
  possibAct, i, j = possibleActions(i, j)

您可以将and替换为or

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM