在Python中使用else条件语句和for循环
在本文中,我们将学习Python3.x中的loop-else语句。或更早。在本教程中,我们将重点介绍for循环和else语句的执行方式。
在其他语言中,else功能仅在if-else对中提供。但是Python允许我们也通过for循环实现else功能。
else功能仅在循环正常终止时才可用。在强制终止循环的情况下,解释器将忽略else语句,因此将跳过其执行。
现在,让我们快速浏览一下一些插图,以更好的方式理解loopelse语句。
图1:正常终止的其他构造
示例
for i in ['T','P']: print(i) else: # Loop else statement print("Loop-else statement successfully executed")
输出结果
T P Loop-else statement successfully executed
图2:强制终止的其他构造
示例
for i in ['T','P']: print(i) break else: # Loop else statement print("Loop-else statement successfully executed")
输出结果
T
说明-循环else语句在ILLUSTRATION1中执行,因为for循环在完成对list['T','P']的迭代后通常终止。但是在ILLUSTRATION2中,loop-else语句不作为循环执行通过使用类似break的跳转语句强制终止。
这些ILLUSTRATIONS清楚地表明,在强行终止循环时,不会执行loop-else语句。
现在,让我们看一下一个示例,其中在某些条件下执行loop-else语句,而在某些情况下则不执行。
示例
def pos_nev_test(): for i in [5,6,7]: if i>=0: print ("Positive number") else: print ("Negative number") break else: print ("Loop-else Executed") # main function pos_nev_test()
输出结果
Positive number Positive number Positive number Loop-else Executed
解释-由于if-else构造中的else块未执行,就好像条件评估为true一样,因此执行Loop-Else语句。
如果将for循环[5,6,7]中的列表替换为[7,-1,3],则输出更改为
输出结果
Positive number Negative number
结论
在本文中,我们学习了loop-else语句的实现以及各种实现方式。