【发布时间】:2011-08-30 03:35:26
【问题描述】:
我发现类似但不相同的问题742371 和4081217 有很好的答案,但还没有解决我的问题。
我正在尝试处理列表中的项目,同时它被循环,如果它没有满足条件,则重新循环列表中剩余的内容。对于列表中的所有项目,条件最终将满足为 True,但不一定在“已知”迭代中。它在某种程度上让我想起了构建一棵树,因为列表中的某些项目必须在其他项目之前处理,但其他项目可能会事先循环。
我的第一个直觉是创建一个递归函数并编辑列表的切片副本。不过我运气不太好~
我最初不会知道它需要多少遍,但它永远不会比列表中的元素多...只是至少有一个元素的性质总是满足条件为真
理想情况下......结果将如下所示
# initial list
myList = ['it1', 'test', 'blah', 10]
newList = []
# first pass
newList = ['test']
# 2nd pass
newList = ['test', 'blah', 10]
# 3rd pass
newList = ['test', 'blah', 10, 'it1']
【问题讨论】: