adapt

【python全栈】2. else不常用的使用方法
else常结合if语句一起使用,达到条件判断的作用,但是你知道它还有另外的用法吗? 1. while...el...
扫描右侧二维码阅读全文
04
2019/04

【python全栈】2. else不常用的使用方法

else常结合if语句一起使用,达到条件判断的作用,但是你知道它还有另外的用法吗?

1. while...else...

else在和while一起使用时,else仅在while的判断条件变为false时执行。如果在while循环中由于breakreturn等跳出了while循环,或者在循环期间引发了异常,则不会执行else块的语句。如下:

i = 1
while i < 3:
    print(i)
else:
    print('循环运行完毕')
# 输出的结果为:
1
2
循环运行完毕

这和我们通常所理解的if...else的情况不同,这里else语句块是在循环语句正常执行后才会执行的语句,所以此处常和break一起使用,如下:

i = 1
while i < 3:
    print(i)
    if i == 2:
        break # break跳出循环,不执行else块
else:
    print('循环运行完毕')
# 输出的结果为:
1
2

2. for...else...

for...elsewhile...else的功能是类似的,else也是仅在for循环能够正常完整的运行完后运行,其他一切导致循环没有完整运行的情况都会使得else不运行。

for i in range(4):
    print(i)
    if i == 2:
        break
else:
    print('for循环运行完毕')
# 输出结果如下:
1
2

尽量去避免使用上述的这种糟糕的结构(写出来是为了能够看懂这种形式的代码,如果别人使用的话),至少else这个用词在这里是很糟糕的。

最后修改:2019 年 09 月 14 日 02 : 03 PM
如果觉得我的文章对你有用,请随意赞赏

发表评论