Python如何重复执行循环步骤直到指定函数返回True
代码调整方案
原有代码的问题是每个姓名仅执行1次校验逻辑,没有重复执行的控制流程,你可以通过新增内层循环实现需求,修改后的完整代码如下:
import random names = [ "John", "Mike", "Jimmy", "Curt", "Ted", "Bob", "Dean" ] def randomAnswer(): return bool(random.getrandbits(1)) for name in names: while True: result = randomAnswer() print("Name {} returned {}".format(name, result)) if result: break
逻辑说明
- 外层
for循环遍历所有姓名,每次处理单个姓名 - 内层
while True构建死循环,重复执行校验、打印操作 - 当
randomAnswer返回True时触发break,结束当前姓名的校验流程,进入下一个姓名的处理
内容的提问来源于stack exchange,提问作者CDoc
相关产品推荐
相关产品推荐

