您的位置:首页 > 编程语言 > Python开发

2017年学习总结___生成器

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

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

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

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

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

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

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

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

另外要记住,for...in...后面加的必须是可迭代对象!
什么是可迭代对象:就是可以使用iter()方法的,并且都是有next方法的
list.tuple,dict,string,:都是iterable方法   (迭代器)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python