Python的高阶特性(列表生成式,生成器)
一.列表生成式
1.生成的是一个列表,之前的一些简单的代码,用列表生成式一行就可以搞定
2.列表生成式的应用:找出指定目录下的以.conf结尾的文件
import os ###导入操作系统
3.在python2和python3中range和xrange的区别
二.生成器
通过列表生成式,可以直接创建一个列表,受到内存的限制,列表容量肯定是有限的,如果在循环的过程中不断推算出后续的元素,这样就能节省大量的空间,把这种一遍循环一遍计算的机制,称为生成器
1.生成器的创建方法
2.生成器的使用方法
next( ) ###生成器的调用
close( ) ###生成器的关闭
3.生成器的应用:
(1)斐波拉契数列
(2)生产消费者模型
有yield关键字的函数称为生成器函数,遇到yield停止,再次执行从yield开始
(3)生产消费者模型
运行结果如下:
(4)对文本文件的操作:
打开文件/mnt/passwd 同时把文件改为大写输出
运行结果:
(5)微型聊天机器人
send()传值给yield关键字
(6)常见的报错类型
(7)生成器throw()方法:抛出一个异常