在 for 循环中,如果我的迭代器满足条件,我如何传递给下一个迭代器?

In a for loop, if my iterator satisfies a condition, how can I pass to the next iterator?

我需要一些帮助for loop

如果我使用 for 语句遍历项目列表,如果实际满足条件,我应该如何 传递给下一个迭代器?

示例:

for item in list:
    if item == 10:
        next_item
    else:
        do_something

我应该写什么来代替 next_item

continue 会起作用。但是,为什么不呢:

for item in list:
    if item != 10:
        do_something

甚至:

[do_something(item) for item in list if item != 10]

我猜你的意思是获取 if 中的下一个项目,你可以使用 iter 调用 next 从 if 语句中的列表中获取下一个元素:

lst = [1,2,3,4]
it = iter(lst)
for item in it:
    if item == 10:
        nxt = next(it,None)
    else:
        do_something

如果你有 None 的使用对象:

,你可能想在使用 nxt 做任何事情之前检查 if nxt is not None
lst = [1,2,3,4]
obj = object()
it = iter(lst)
for item in lst:
    if item == 10:
        nxt = next(it, obj)
        if nxt is not obj:
            # do whatever
    else:
        do_something