2017年学习总结___生成器

python的一个非常有用的高级特性,1行代码能实现的功能,决不写5行代码。请始终牢记,代码越少,开发效率越高。

当我们使用for循环时,只要作用于一个可迭代对象,for循环就可以正常运行,而我们不太关心该对象究竟是list还是其他数据类型。

那么,如何判断一个对象是可迭代对象呢?方法是通过collections模块的Iterable类型判断

首先说明生成器的调用在python中是使用next()的方式进行调用的,这点需要注意
生成器是一个个调用,按照顺序进行调用,不能跟列表调用一样,随意切片选择
这样的好处就是提速效果比较明显,记住一个结论:

生成器就是一个可迭代对象!

所以可以对生成器直接用for...in...的方式进行调出与迭代,这是第二种调用方法

第三种调用方法是用send方法

生成器一共有两种创建方式第一种是采用()小括号的方式组成
第二种是用yiled生成

另外要记住,for...in...后面加的必须是可迭代对象!
什么是可迭代对象:就是可以使用iter()方法的,并且都是有next方法的
list.tuple,dict,string,:都是iterable方法   (迭代器)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值