迭代调用一个函数

Recalling a function iteratively

我有一个关于在循环中调用我的函数的问题。

下面是我的代码:

List_new = myfunction()
for items in List_new:
    if(my condition is TRUE):
        Execute some commands
    if(my condition is FALSE):
        recall myfunction()

我的问题是我正在使用 myfunction() 加载“List_new”。当我的条件为假时,如何迭代地更改“List_new”。我想重新加载函数,尤其是当条件为 FALSE 时。这意味着我一直调用函数直到它为假,然后执行 myfunction() 的最终输出。

预先感谢您的帮助。

我将假设 myfunction() 生成的列表大小不变。

您可以使用 while 循环:

List_new = myfunction()
index=0
while index < len(List_new):
    
    items = List_new[index]
    if(my condition is TRUE):
        #Execute some commands
        i+=1
    if(my condition is FALSE):
        List_new = myfunction()

请记住,如果 myfunction() 不断生成错误值,此解决方案将出现无限循环。如果你能保证所有的值最终都是 True 那么它应该总是终止。