gpt4 book ai didi

python - 循环处理列表中的项目,重新循环直到处理完所有项目

转载 作者:太空宇宙 更新时间:2023-11-04 09:17:30 25 4
gpt4 key购买 nike

我发现了相似但不相同的问题 7423714081217有很好的答案,但还没有解决我的问题。

我正在尝试在循环处理列表中的项目时就地处理它,如果不满足条件则重新循环处理列表中剩余的项目。对于列表中的所有项目,条件最终将被满足为 True,但不一定在“已知”迭代中。这在某种程度上让我想起了构建一棵树,因为列表中的某些项目必须在其他项目之前处理,但其他项目可能会事先循环。

我的第一直觉是创建一个递归函数并编辑列表的切片副本。不过我运气不好~

我一开始并不知道它需要多少遍,但它永远不会比列表中的元素多...只是根据至少一个元素的性质将始终满足条件为 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']

最佳答案

current = ['it1', 'test', 'blah', 10]
results = []
while current:
remaining = []
for item in current:
(results if meets_conditional(item) else remaining).append(item)
current = remaining

关于python - 循环处理列表中的项目,重新循环直到处理完所有项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7238401/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com