Python的高阶特性(列表生成式,生成器)

一.列表生成式

1.生成的是一个列表,之前的一些简单的代码,用列表生成式一行就可以搞定

Python的高阶特性(列表生成式,生成器)

2.列表生成式的应用:找出指定目录下的以.conf结尾的文件

import os   ###导入操作系统

Python的高阶特性(列表生成式,生成器)

3.在python2和python3中range和xrange的区别

Python的高阶特性(列表生成式,生成器)

二.生成器

       通过列表生成式,可以直接创建一个列表,受到内存的限制,列表容量肯定是有限的,如果在循环的过程中不断推算出后续的元素,这样就能节省大量的空间,把这种一遍循环一遍计算的机制,称为生成器

1.生成器的创建方法

Python的高阶特性(列表生成式,生成器)

2.生成器的使用方法

next( )    ###生成器的调用

close( )   ###生成器的关闭

Python的高阶特性(列表生成式,生成器)

3.生成器的应用:

(1)斐波拉契数列

Python的高阶特性(列表生成式,生成器)

(2)生产消费者模型

有yield关键字的函数称为生成器函数,遇到yield停止,再次执行从yield开始

Python的高阶特性(列表生成式,生成器)

(3)生产消费者模型

Python的高阶特性(列表生成式,生成器)

Python的高阶特性(列表生成式,生成器)

运行结果如下:

Python的高阶特性(列表生成式,生成器)

(4)对文本文件的操作:

打开文件/mnt/passwd 同时把文件改为大写输出

Python的高阶特性(列表生成式,生成器)

运行结果:

Python的高阶特性(列表生成式,生成器)

(5)微型聊天机器人

send()传值给yield关键字

Python的高阶特性(列表生成式,生成器)

Python的高阶特性(列表生成式,生成器)

(6)常见的报错类型

Python的高阶特性(列表生成式,生成器)

(7)生成器throw()方法:抛出一个异常

Python的高阶特性(列表生成式,生成器)