使用if循环执行for循环直到它完成

时间:2016-09-28 15:28:27

标签: python python-3.x

我想在我的python程序中完成以下操作:

for l in list(p):
    if condition1:
        S1
        s2
        s3

        if condition2:
            return something

我想在这里做的是,是否可以执行for循环直到它完成,然后只执行第二次if循环。问题是第二个if循环必须在for循环中,它应该只执行一次。

如果可能,请告诉我,我该怎么办?

2 个答案:

答案 0 :(得分:3)

您可能希望将该代码块移动到else循环的for块,该for循环在if循环耗尽后立即执行。第二个for l in p: if condition1: ... else: if condition2: return something 只会执行一次:

else

如果for循环正文中没有例外,breakreturn语句,for的{​​{1}}块将被执行。

在旁注中,如果p是可迭代的,则在list

中使用for之前,您无需在其上调用string_ref

答案 1 :(得分:0)

尝试使用带有增量计数器i和索引的for循环来引用列表元素。然后你可以为condition2添加一个条件,阻止它进行评估,除非i == len(list(p))。