python 生成器(四):生成器基础(四)标准库中的生成器函数
os.walk
这个函数在遍历目录树的过程中产出文件名,因此递归搜索文件系统像for 循环那样简单。
用于过滤的生成器函数
| 模块 | 函数 | 说明 |
| itertools |
compress(it, |
并行处理两个可迭代的对象;如果 selector_it 中的元素是真值,产出 it 中对应的元素 |
| itertools |
dropwhile(predicate, |
处理 it,跳过 predicate 的计算结果为真值的元 |
| filter(predicate, it) |
把 it 中的各个元素传给 predicate,如果 |
|
| itertools |
filterfalse(predicate, |
与 filter 函数的作用类似,不过 predicate 的 |
| itertools |
islice(it, stop) 或 |
产出 it 的切片,作用类似于 s[:stop] 或 |
| itertools |
takewhile(predicate, |
predicate 返回真值时产出对应的元素,然后立 |
表14-2:用于映射的生成器函数
| 模块 | 函数 | 说明 |
| itertools |
accumulate(it, |
产出累积的总和;如果提供了 func,那么把前两个 |
|
enumerate(iterable, |
产出由两个元素组成的元组,结构是 (index, |
|
|
map(func, it1, |
把 it 中的各个元素传给func,产出结果;如果传入 |
|
| itertools | starmap(func, it) |
把 it 中的各个元素传给 func,产出结果;输入的 |
表14-3:合并多个可迭代对象的生成器函数
| 模块 | 函数 | 说明 |
| itertools | chain(it1, ..., itN) |
先产出 it1 中的所有元素,然后产出 it2 中的 |
| itertools | chain.from_iterable(it) |
产出 it 生成的各个可迭代对象中的元素,一个 |
| itertools |
product(it1, ..., itN, |
计算笛卡儿积:从输入的各个可迭代对象中获 |
| zip(it1, ..., itN) |
并行从输入的各个可迭代对象中获取元素,产 |
|
| itertools |
zip_longest(it1, ..., |
并行从输入的各个可迭代对象中获取元素,产 |
表14-4:把输入的各个元素扩展成多个输出元素的生成器函数
| 模块 | 函数 | 说明 |
| itertools | combinations(it, out_len) |
把 it 产出的 out_len 个元素组合在 |
| itertools |
combinations_with_replacement(it, |
把 it 产出的 out_len 个元素组合在 |
| itertools | count(start=0, step=1) |
从 start 开始不断产出数字,按 |
| itertools | cycle(it) |
从 it 中产出各个元素,存储各个元 |
| itertools | permutations(it, out_len=None) |
把 out_len 个 it 产出的元素排列在 |
| itertools | repeat(item, [times]) |
重复不断地产出指定的元素,除非 |
表14-5:用于重新排列元素的生成器函数
| 模块 | 函数 | 说明 |
| itertools | groupby(it,key=None) |
产出由两个元素组成的元素,形式为 (key, |
| reversed(seq) |
从后向前,倒序产出 seq 中的元素;seq 必须是序 |
|
| itertools | tee(it, n=2) |
产出一个由 n 个生成器组成的元组,每个生成器 |
python 生成器(四):生成器基础(四)标准库中的生成器函数的更多相关文章
- Python标准库中的生成器函数
一.用于过滤的生成器函数 - 从输入的可迭代对象中产出元素的子集,而不修改元素本身 import itertools l1 = [1,2,3,4,5] l2 = [True,False,True,Fa ...
- python协程(yield、asyncio标准库、gevent第三方)、异步的实现
引言 同步:不同程序单元为了完成某个任务,在执行过程中需靠某种通信方式以协调一致,称这些程序单元是同步执行的. 例如购物系统中更新商品库存,需要用"行锁"作为通信信号,让不同的更新 ...
- python 3.x 爬虫基础---常用第三方库(requests,BeautifulSoup4,selenium,lxml )
python 3.x 爬虫基础 python 3.x 爬虫基础---http headers详解 python 3.x 爬虫基础---Urllib详解 python 3.x 爬虫基础---常用第三方库 ...
- Python 标准库中的装饰器
题目描述 1.简单举例 Python 标准库中的装饰器 2.说说你用过的 Python 标准库中的装饰器 1. 首先,我们比较熟悉,也是比较常用的 Python 标准库提供的装饰器有:property ...
- Python标准库:内置函数hasattr(object, name)
Python标准库:内置函数hasattr(object, name) 本函数是用来判断对象object的属性(name表示)是否存在.如果属性(name表示)存在,则返回True,否则返回False ...
- Python学习笔记011_模块_标准库_第三方库的安装
容器 -> 数据的封装 函数 -> 语句的封装 类 -> 方法和属性的封装 模块 -> 模块就是程序 , 保存每个.py文件 # 创建了一个hello.py的文件,它的内容如下 ...
- (转)python标准库中socket模块详解
python标准库中socket模块详解 socket模块简介 原文:http://www.lybbn.cn/data/datas.php?yw=71 网络上的两个程序通过一个双向的通信连接实现数据的 ...
- Python标准库-数字的处理函数(math模块)
Python标准库-数字的处理函数(math模块) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. #!/usr/bin/env python #_*_conding:utf-8_* ...
- STL笔记(6)标准库:标准库中的排序算法
STL笔记(6)标准库:标准库中的排序算法 标准库:标准库中的排序算法The Standard Librarian: Sorting in the Standard Library Matthew A ...
随机推荐
- UDF_表值函数与标量函数的区别_分割字符串成单个的字符并返回表(插入到表中)
UDF_区别_分割字符串成单个的字符并返回表(插入到表中) /* SQL表值函数和标量值函数的区别 实验环境:SQL Server 2014,参考maomao365有改编 在sqlserver中存储过 ...
- 在IntelliJ IDEA中注释使用的说明
/** * @author 标明该类模块的开发作者 * @version 标明该类模块的版本 * @see 参开转向,也就是相关的主题 * @param 对方法中的某些参数进行说明 * @return ...
- ca78a_c++_字符串流在内存中的输入输出(速度快)
/*ca78a_c++_字符串流在内存中的输入输出**字符串流:在内存中的输入输出.(在内存中进行,速度快)**文件流 :是对文件进行输入和输出.(在磁盘里面进行)istringstream(输入), ...
- 一文搞懂InnoDB索引存储结构
参考资料:掘金小册:MySQL 是怎样运行的:从根儿上理解 MySQL B+树 我们知道,InnoDB是用B+树作为组织数据形式的数据结构.不论是存放用户记录的数据页,还是存放目录项记录的数据页,我们 ...
- 黎活明8天快速掌握android视频教程--24_网络通信之网页源码查看器
1 该项目的主要功能就是从将后台的html网页在Android的界面上显示出来 后台就是建立一个java web工程在工程尚建立一个html或者jsp文件就可以了,这里主要看Android客户端的程序 ...
- element ui 版本升级
element ui 版本升级 1. 卸载之前版本 npm uninstall element-ui 2.重新安装element-ui npm i element-ui 3.就如package.jso ...
- cookie,session,jwt,token,oauth2联系和区别
为啥有这么多的东西? 由于互联网在刚开始设计的时候是展现静态网页为主,没有现在这么多的交互和互动,所以被设计为了无状态,随用随走的简单模式.随着互联网的发展,各种具有和用户交互功能的网站出现,要求用户 ...
- Python3-sys模块-解释器相关参数与函数
Python3中的sys模块提供了访问由解释器使用和维护的一些变量和与解释器强烈交互的函数 sys.argv 获取传递给Python脚本的参数列表,sys.argv[0]代表脚本本身,sys.argv ...
- Angular 从入坑到挖坑 - 模块简介
一.Overview Angular 入坑记录的笔记第七篇,介绍 Angular 中的模块的相关概念,了解相关的使用场景,以及知晓如何通过特性模块来组织我们的 Angular 应用 对应官方文档地址: ...
- Docker基本命令及工作原理
第一个Docker容器 1.首先确保Docker运行正常:docker info