相关疑难解决方法(0)

为什么python在for循环之后使用'else'?

我理解这个结构是如何工作的:

for i in range(10):
    print(i)

    if i == 9:
        print("Too big - I'm giving up!")
        break;
else:
    print("Completed successfully")
Run Code Online (Sandbox Code Playgroud)

但我不明白为什么else在这里用作关键字,因为它表明有问题的代码仅在for块未完成时运行,这与它的作用相反!无论我如何看待它,我的大脑都无法从for语句无缝地进展到else块.对我来说,continue或者continuewith更有意义(我正在努力训练自己阅读它).

我想知道Python编码器如何在他们的脑海中读取这个结构(或者如果你愿意的话,大声朗读).也许我错过了一些会让这些代码块更容易破译的东西?

python for-loop if-statement for-else

417
推荐指数
16
解决办法
14万
查看次数

循环语句的else子句的启发和影响?

Python循环语句可能有一个else子句,当且仅当循环未被a终止时才执行该子句break.换句话说,当条件变为False(有while)或迭代器耗尽时(带for).

这个循环 - 其他构造是否源自另一种语言(理论上的或实际的)?它是否被任何较新的语言所采用?

也许我应该问问Guido的前任,但他肯定太忙了,无法进行如此徒劳的调查.;-)

相关讨论和示例: 在for循环中使用'else'的Pythonic方法

python history loops if-statement

11
推荐指数
1
解决办法
578
查看次数

标签 统计

if-statement ×2

python ×2

for-else ×1

for-loop ×1

history ×1

loops ×1