在Python中,不仅分支语句有else子句
,而且循环语句也有,甚至连异常处理也有。
# while-else形式
while expression:
suite
else:
suite
# for-else形式
for target_list in expression_list:
suite
else:
suite
else子句提供了隐含的对循环是否由break语句
引发循环结束的判断。else块在循环正常结束和循环条件不成立时被执行。
与C/C++等较为“老土”的语言相比,else子句使程序员的生产力和代码的可读性都得到了提高,所以建议多使用else,让程序变得更加Pythonic。
# 在循环中添加一条else子句,仅在没有调用break时才执行。
def prime(n):
for i in range(2, n):
for j in range(2, i):
if i % j == 0:
break
else:
print("{num} is a prime number".format(num = i))
在Python的异常处理中,也提供了else子句的语法,try块
没有抛出任何异常时,执行else块。
# try-except-else-finally形式
try:
suite
except expression as target:
suite
else:
suite
finally:
suite
# try-finally形式
try:
suite
finally:
suite
在Python中还有不少语法都是致力于让程序员可以编写更加简明、更接近自然语言语义的代码,比如in和with语句。
(最近更新:2019年05月16日)