我想在我的python程序中完成以下操作:
for l in list(p):
if condition1:
S1
s2
s3
if condition2:
return something
我想在这里做的是,是否可以执行for循环直到它完成,然后只执行第二次if循环。问题是第二个if循环必须在for循环中,它应该只执行一次。
如果可能,请告诉我,我该怎么办?
答案 0 :(得分:3)
您可能希望将该代码块移动到else
循环的for
块,该for
循环在if
循环耗尽后立即执行。第二个for l in p:
if condition1:
...
else:
if condition2:
return something
只会执行一次:
else
如果for
循环正文中没有例外,break
或return
语句,for
的{{1}}块将被执行。
在旁注中,如果p
是可迭代的,则在list
for
之前,您无需在其上调用string_ref
答案 1 :(得分:0)
尝试使用带有增量计数器i和索引的for循环来引用列表元素。然后你可以为condition2添加一个条件,阻止它进行评估,除非i == len(list(p))。