前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >for循环和else连用结构,结合break关键词使用有何不同?【Python编程技能问答001】

for循环和else连用结构,结合break关键词使用有何不同?【Python编程技能问答001】

作者头像
刘金玉编程
发布2024-02-27 08:05:03
900
发布2024-02-27 08:05:03
举报
文章被收录于专栏:编程创造城市编程创造城市

for循环和else连用结构,结合break关键词使用有何不同?

您可以打开IDEL,编写如下代码进行测试和观察:

测试代码文字版如下:

代码语言:javascript
复制
import random

for i in range(20):
    print(f'第{i}次尝试:')
    mycode=random.randint(1,100)
    if 40<mycode<50:
        print(mycode)
        break
else:
    print('生成失败')

TIP:

一般情况下,在for循环内部,如果不使用break关键词,那么在for循环结束后,会进入与for连用的else语句块。

===================== RESTART: C:/Users/selidev/Desktop/t.py ===================== 第0次尝试: 第1次尝试: 第2次尝试: 第3次尝试: 第4次尝试: 第5次尝试: 第6次尝试: 第7次尝试: 第8次尝试: 第9次尝试: 第10次尝试: 第11次尝试: 第12次尝试: 第13次尝试: 第14次尝试: 第15次尝试: 第16次尝试: 第17次尝试: 第18次尝试: 第19次尝试: 生成失败

最后有输出“生成失败”,是由于没有执行到break关键词。

但是,如果在for循环中一旦被break之后,则不再进入else语句。

测试结果:

===================== RESTART: C:/Users/selidev/Desktop/t.py ===================== 第0次尝试: 第1次尝试: 45 被break了 ===================== RESTART: C:/Users/selidev/Desktop/t.py ===================== 第0次尝试: 第1次尝试: 43 被break了 ===================== RESTART: C:/Users/selidev/Desktop/t.py ===================== 第0次尝试: 第1次尝试: 第2次尝试: 第3次尝试: 第4次尝试: 第5次尝试: 第6次尝试: 第7次尝试: 第8次尝试: 46 被break了

在这里,可能会想到是否可以将break改成continue呢?

经过测试,您会发现,continue被执行后,仍然会执行到与for并联的else语句块。

测试结果如下:

= RESTART: C:\Users\selid\Desktop\t.py

第0次尝试:

第1次尝试:

第2次尝试:

第3次尝试:

第4次尝试:

第5次尝试:

第6次尝试:

第7次尝试:

第8次尝试:

第9次尝试:

第10次尝试:

第11次尝试:

第12次尝试:

第13次尝试:

第14次尝试:

43 此处被执行到了continue

第15次尝试:

第16次尝试:

第17次尝试:

第18次尝试:

第19次尝试:

生成失败

更多Python基础操作知识,大家可以到B站/优酷/爱奇艺/好看视频/腾讯视频搜索“刘金玉”,可以找到《零基础Python教程》和《Python高级进阶教程》视频合集哦!全部免费亲情奉献!

预告:【Python编程技能问答002】 ,欢迎继续关注!

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2024-02-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 编程创造城市 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
腾讯云服务器利旧
云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档