Python3.5-20190507-廖老师-自我笔记-迭代

可以使用for x in 数据 的那么 这个数据就是可迭代对象.

通过计算生成下一个值的数据就是生成器

可以使用next(数据) 来计算出下一个值的数据就是迭代器(生成器属于迭代器)

--------------------------------------------------------------

先说迭代:

  在Python中,迭代是通过for ... in来完成的,能实现for  ....in的数据就是可迭代对象

使用isinstance 来判断他属不属于可迭代对象Iterable,所以以上都可以使用for 循环来进行迭代.(整数就不可迭代对象哦)

collections(集合),可以说只有集合才判断是不是可以迭代.

列表生成式:快速创建列表,就是把几行的代码浓缩成一行.比如:输出1-10中的偶数:  [ x for x in range(1,11) if x % 2 == 0]

几个例子,自己体会一下

 

 

以上就是列表生成式,他的生成都是由规律的.如果数据量很大,那么他占用的内存就很多.所有人有就想到了,生成器,我需要一个,你给我计算然后生成一个,我需要下一个,你再给我生成下一个.这样就不会浪费资源了.

创建生成器的方法:

  1.将列表生成式的[],改成(),那么就是一个生成器.shen

 

 

 

 2,就是通过修改函数,来创建生成器.只要函数中有 yield 就是生成器

不是普通函数,而是generator,在执行过程中,遇到yield就中断,

 

.今天就到这.今天锻炼的有点猛了

 

转载于:https://www.cnblogs.com/tarzen213/p/10828789.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值