【Python学习】循环

目录

一、循环结构

for循环和可迭代对象遍历

可迭代对象

range对象

嵌套循环

break语句

continue语句

else语句

并行迭代

zip()

 二、推导式创建序列

列表推导式

字典推导式

集合推导式 

生成器推导式(生成元组)


一、循环结构

for循环和可迭代对象遍历

for  变量  in  可迭代对象:

        循环体语句

可迭代对象

1.序列

2.字典

3.迭代器对象(iterator)

4.生成器函数(generator)

5.文件对象

range对象

range对象是一个迭代器对象,用来产生指定范围的数字序列

range(start, end, [step])

嵌套循环

一个循环体内可以嵌入另一个循环,一般称为“嵌套循环”,或者“多重循环”

break语句

用来结束循环,当在嵌套循环中,只能跳出最近的一层循环

continue语句

用于结束本次循环,继续下一次,当在嵌套循环中,只应用于最近的一层循环

else语句

while、for循环可以附带一个else语句(可选)。如果for、while语句没有被break结束,则会执行else子句(先执行完全部循环体),否则不执行。

while/for:

        循环体

else:

        语句块

并行迭代

zip()

zip()可以对多个序列同时进行并行迭代,在最短序列“用完”时就会停止

a = ("1","2","3","4")
b = ("5","6","7")
c = ("8","9","10","11")
for a, b, c in zip(a, b, c):
    print(f"{a}--{b}--{c}")
#1--5--8  /n  2--6--9  /n  3--7--10

 二、推导式创建序列

推导式是从一个或多个迭代器快速创建序列的一种方法,它可以将循环和条件判断结合,从而避免冗长的代码。

列表推导式

[表达式 for item in 可迭代对象]

or

[表达式 for item in 可迭代对象 if 条件判断]

eg:

[x*2 for x in range(1,5)] #range[1,5)
#[2, 4, 6, 8]

 也可以使用两个循环,对于两个参数而言,但实际上是一个对象(比如点坐标)

字典推导式

{key_expression : value_expression for 表达式 in 可迭代对象}

eg:

my_text = "i love you"
char_count = {c:my_text.count(c) for c in my_text}
#{"i":1, " ":2, "l":1, "o":2, "v":1, "e":1, "u":1}

集合推导式 

{表达式 for item in 可迭代对象}

or

{表达式 for item in 可迭代对象 if 条件判断}

生成器推导式(生成元组)

元组是没有推导式的,一个生成器只能运行一次,第一次迭代可以得到数据,第二次迭代发现数据已经没有了 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值