我正在深入了解继续的目的。我知道continue
回到循环的顶部,break
停止执行,pass
什么都不做。如果continue
回到循环顶部会不会递归?在我的示例中,continue用于停止执行。
import re
value = []
items=[x for x in raw_input().split(',')]
for p in items:
if len(p)<6 or len(p)>12:
continue
else:
pass
if not re.search("[a-z]",p):
continue
elif not re.search("[0-9]",p):
continue
elif not re.search("[A-Z]",p):
continue
elif not re.search("[$#@]",p):
continue
elif re.search("\s",p):
continue
else:
pass
value.append(p)
print ",".join(value)
答案 0 :(得分:2)
continue
只是意味着“这次不执行任何剩余的循环体”。
下一次迭代将与您没有continue
d完全相同 - 也就是说,您的循环变量p
将像往常一样绑定到items
的下一个元素
我认为通过“递归”表示“不会终止”,因为您怀疑p
将绑定到items
的相同元素因为它是最后一次。这通常不是“递归” - 递归函数通常被理解为显式调用自身,通常使用基本情况来防止无限递归。