Skip to main content
 首页 » 编程设计

python之如何有条件地跳过 python 中 for 循环中的迭代步骤数

2025年05月04日1598°冷暖

我们有一个列表item_list,

item_list = ["a", "b", "XYZ", "c", "d", "e", "f", "g"] 

我们用 for 循环遍历它的项目,如果项目是 "XYZ",跳过项目 "c", "d", "e" 并继续“f”:

for item in item_list: 
    if item == "XYZ": 
       do_something() 
       skip_3_items() ----> skip items "c", "d", "e" 
    else: 
        do_something_else() 

实现此目标的最 Pythonic 方法是什么?

请您参考如下方法:

list_iter = iter(item_list) 
 
for item in list_iter: 
    if item == "XYZ": 
        do_something() 
        for _ in range(3):   # skip next 3 items 
            next(list_iter, None) 
 
# etc. 

基本上,不是直接遍历列表,而是为它创建一个称为迭代器 的抽象并对其进行遍历。您可以通过调用 next(...) 告诉迭代器前进到下一个项目,我们执行三次以跳过接下来的三个项目。下一次循环时,它会在那之后的下一个项目处拾取。