当前位置: 首页 > news >正文

python7学习笔记-循环、迭代、pass

九九乘法表-while循环

right = 1
while right <= 9:left = 1while left <= right:print(f'{left}x{right}={left * right}',end='\t')left += 1print()right += 1
#=============================================
#效果:
#1x1=1	
#1x2=2	2x2=4	
#1x3=3	2x3=6	3x3=9	
#1x4=4	2x4=8	3x4=12	4x4=16	
#1x5=5	2x5=10	3x5=15	4x5=20	5x5=25	
#1x6=6	2x6=12	3x6=18	4x6=24	5x6=30	6x6=36	
#1x7=7	2x7=14	3x7=21	4x7=28	5x7=35	6x7=42	7x7=49	
#1x8=8	2x8=16	3x8=24	4x8=32	5x8=40	6x8=48	7x8=56	8x8=64	
#1x9=9	2x9=18	3x9=27	4x9=36	5x9=45	6x9=54	7x9=63	8x9=72	9x9=81	

for循环

for 变量 in 可迭代对象:

        循环体

enumerate(iterable,start = 0)

  • 枚举
  • 返回一个迭代器对象。迭代它会得到一个个元组,每个元组是由索引和对应元素构成。
  • start决定了索引的起始值。
string = 'dfadg'
enu = enumerate(string) # 返回一个迭代器
print(list(enu))
#输出结果
#[(0, 'd'), (1, 'f'), (2, 'a'), (3, 'd'), (4, 'g')]str2 = '🐱🐱🐕🐕'
for i in enumerate(str2):print(i,end=' ')
#输出结果
#(0, '🐱') (1, '🐱') (2, '🐕') (3, '🐕') 

for...in...else...

lst = [4, 3, 8, 532, 1]
for i in lst:print(i,end=' ')if i > 5:breakelse:print('🐱',end=' ')
#输出结果
#4 🐱 3 🐱 8 

break

  • 终止所在的循环

continue

  • 跳过当前这次循环,继续到下一次循环
  • for i in range(1, 11):if i % 2 == 0:continue # 若if成立,则直接跳到forelse:print(i,end=' ')
    #输出结果
    #1 3 5 7 9 

列表推导式

  • 格式:语句 for 子句
  • 列表推导式
lst = [x ** 2 for x in range(8)]
print(lst)
#[0, 1, 4, 9]

迭代问题

  • 列表迭代问题

        列表内存自动管理:Python的列表会自动管理内容,当对列表插入元素或者删除元素时,列表会移动其中的元素以保证元素之间是连续的。

lst1 = [1, 2, 3]for i in lst1:lst1.remove(i)print(lst1)# [2],remove过程原列表的下标改变了lst2 = ['a', 'b', 'd', 'f']
new_lst = lst2.copy()for i in new_lst:lst2.remove(i)
print(lst2)#[]

字典、集合迭代问题

  • 字典、集合在迭代时,不允许改变元数据的size
#字典迭代
info_Magic = {'Academy' : 'Gryffindor','name' : 'HarryPotter','grade' : 1}
#for循环输出键
for k in info_Magic:print(k, end=' ') #Academy name grade
print()#会报错
# for k in info_Magic:
#     del info_Magic[k]
#     print(info_Magic) #RuntimeError: dictionary changed size during iterationnew_d = info_Magic.copy()
for k in new_d:del info_Magic[k]print(info_Magic)
'''
for循环输出结果:
{'name': 'HarryPotter', 'grade': 1}
{'grade': 1}
{}
'''

pass语句

  • pass是一个关键字,表示一个空语句,当它被执行时,不做任何操作,通常用占位符,用在当语法上需要语句但实际不需要执行任何操作的情况下使用。
http://www.lryc.cn/news/497025.html

相关文章:

  • LeetCode78:子集
  • Linux 安装scala
  • 重生之我在异世界学编程之C语言:深入指针篇(上)
  • linux centos7 yum命令失效
  • mac访达打开终端
  • 【MySQL 进阶之路】索引的使用
  • 网络编程相关 API 学习
  • python使用python-docx处理word
  • 【笔记2-1】ESP32:基于vscode的espidf插件的开发环境搭建
  • 集成网关 -- 新节点的开发说明
  • 【Gitlab】CICD使用minio作为分布式缓存
  • ️️耗时一周,肝了一个超丝滑的卡盒小程序
  • 网络安全审计
  • 论文:IoU Loss for 2D/3D Object Detection
  • 2411mfc,修改按钮颜色
  • 互联网 Java 面试八股文汇总(2025 最新整理)
  • 如何在 Ubuntu 中更新 Linux 内核
  • FilterListenerAjax
  • 27. 移除元素 C++
  • 大模型专栏--Spring Ai Alibaba介绍和功能演示
  • Redis设计与实现第17章 -- 集群 总结2(执行命令 重新分片)
  • 微服务搭建----springboot接入Nacos2.x
  • 3.建立本地仓库及常用命令
  • linux arm下获取屏幕事件(rk3588)
  • 【机器学习】人工智能与气候变化:利用深度学习与机器学习算法预测和缓解环境影响
  • 物联网射频识别和RFID开发(二):RFID原理及硬件组成
  • LeetCode763. 划分字母区间(2024冬季每日一题 23)
  • python调用GPT-4o实时音频 Azure OpenAI GPT-4o Audio and /realtime
  • Hadoop生态圈框架部署 伪集群版(四)- Zookeeper单机部署
  • LuaJava