SyntacticSugars

2019-06-15  本文已影响0人  Rainysong

工作太苦,还好有语法糖。

1.for...else....
for i in range(3):
    print(i)
    if i % 2 == 0:
        break
else:
    print("end")

0

循环遇到 break 退出后,整个语句就结束,else 语句块也不执行了。

综上,我们可以得出这样一个结论,只有当循环里没有遇到 break 时,else 块才会执行。此刻,你应该明白了,真正和 else 搭配使用的是 for 循环中的 break,break ... else ... 才是两个互斥的条件

当你用 for 循环迭代查找列表的中的某个元素时,如果找到了就立刻退出循环,如果迭代完了列表还没找到需要以另外一种形式(比如异常)的方式通知调用者时,用 for...else... 无疑是最好的选择。

for i in mylist:
    if i == target:
        break
    process(i)
else:
    raise ValueError("List argument missing terminal flag.")
2.try...except...else/finally/raise
a=3
if a<4:
  raise Exception
else:
  print(a)
上一篇下一篇

猜你喜欢

热点阅读