Python循环结构中else用法(入门必读)

Python的while和for循环支持else块,当循环条件变为False退出时,else块的代码会被执行。else块在循环结束后执行,常用于提供更优雅的代码结构。在for循环中,else块会在遍历完所有元素后执行,此时迭代变量仍保留最后一个元素的值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Python 中,无论是 while 循环还是 for 循环,其后都可以紧跟着一个 else 代码块,它的作用是,当循环条件为 False 跳出循环时,程序会最先执行 else 代码块中的代码。

如下代码示范了为 while 循环定义 else 代码块:

count_i = 0
while count_i < 5:
    print('count_i小于5: ', count_i)
    count_i += 1
else:
    print('count_i大于或等于5: ', count_i)

运行上面程序,可以看到如下输出结果:

count_i小于5:  0
count_i小于5:  1
count_i小于5:  2
count_i小于5:  3
count_i小于5:  4
count_i大于或等于5:  5

从上面的运行过程来看,当循环条件 count i < 5 变成 False 时,程序执行了 while 循环的 else 代码块。

简单来说,程序在结束循环之前,会先执行 else 代码块。从这个角度来看,else 代码块其实没有太大的价值,将 else 代码块直接放在循环体之外即可。也就是说,上面代码其实可改为如下形式:

count_i = 0
while count_i < 5:
    print('count_i小于5: ', count_i)
    count_i += 1
print('count_i大于或等于5: ', count_i)

上面代码直接将 else 代码块放在 while 循环体之外,程序执行结果与使用 else 代码块的执行结果完全相同。

循环的 else 代码块是 Python 的一个很特殊的语法(其他编程语言通常不支持),else 代码块的主要作用是便于生成更优雅的 Python 代码。


for 循环同样可使用 else 代码块,当 for 循环把区间、元组或列表的所有元素遍历一次之后, for 循环会执行 else 代码块,在 else 代码块中,迭代变量的值依然等于最后一个元素的值。例如如下代码:

a_list = [330, 1.4, 50, 'fkit', -3.5]
for ele in a_list:
    print('元素: ', ele)
else:
    # 访问循环计数器的值,依然等于最后一个元素的值
    print('else块: ', ele)

运行上面程序,可以看到如下输出结果:

元素:  330
元素:  1.4
元素:  50
元素:  fkit
元素:  -3.5
else块:  -3.5

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值