python itertools模块_Python标准库:itertools模块
来源:j_hao104
简介
官方描述:Functional tools for creating and using iterators.即用于创建高效迭代器的函数。
itertools.chain(*iterable)
将多个序列作为一个单独的序列返回。 例如:
importitertools
foreachinitertools.chain('i','love','python'):
printeach
输出:
i
l
o
v
e
p
y
t
h
o
n
itertools.combinations(iterable, r)
返回指定长度的”组合” 例如:
importitertools
foreachinitertools.combinations('abc',2):
printeach
输出:
('a','b')
('a','c')
('b','c')
itertools.combinations_with_replacement(iterable, r)
返回指定长度的“组合”,组合内元素可重复 例如:
importitertools
foreachinitertools.combinations_with_replacement('abc',2):
printeach
输出:
('a','a')
('a','b')
('a','c')
('b','b')
('b','c')
('c','c')
itertools.product(*iterable[,repeat])
返回指定长度的所有组合,可理解为笛卡尔乘积 例如:
importitertools
foreachinitertools.product('abc',repeat=2):
printeach
(‘a’, ‘a’) (‘a’, ‘b’) (‘a’, ‘c’) (‘b’, ‘a’) (‘b’, ‘b’) (‘b’, ‘c’) (‘c’, ‘a’) (‘c’, ‘b’) (‘c’, ‘c’)
itertools.premutations(iteravle[,r])
返回长度为r的排列 例如:
importitertools
forvalueinitertools.permutations('abc',2):
printvalue
输出:
('a','b')
('a','c')
('b','a')
('b','c')
('c','a')
('c','b')
itertools.compress(data,selector)
返回selector为True的data对应元素 例如:
importitertools
foreachinitertools.compress('abcd',[1,0,1,0]):
printeach
输出:
a
c
itertools.count(start=0,step=1)
返回以start开始,step递增的序列,无限递增 例如:
importitertools
foreachinitertools.count(start=0,step=2):
printeach
输出:
1
2
3
.
.
itertools.cycle(iterable)
将迭代器进行无限迭代 例如:
importitertools
foreachinitertools.cycle('ab'):
printeach
输出:
a
b
a
b
.
.
itertools.dropwhile(predicate, iterable)
直到predicate为真,就返回iterable后续数据, 否则drop掉 例如:
importitertools
foreachinitertools.dropwhile(lambdax:x<5,[2,1,6,8,2,1]):
printeach
输出:
6
8
2
1
itertools.groupby(iterable[,key])
返回一组(key,itera),key为iterable的值,itera为等于key的所有项 例如:
importitertools
forkey,valeinitertools.groupby('aabbbc'):
printkey,list(vale)
输出:
a['a','a']
b['b','b','b']
c['c']
itertools.ifilter(predicate, iterable)
返回predicate结果为True的元素迭代器,如果predicate为None,则返回所有iterable中为True的项 例如:
importitertools
forvalueinitertools.ifilter(lambdax:x%2,range(10)):
printvalue
输出:
1
3
5
7
9
itertools.ifilterfasle(predicate,iterable)
返回predicate为False的元素,如果predicate为None,则返回所有iterable中为False的项 例如:
importitertools
forvalueinitertools.ifilterfalse(lambdax:x%2,range(10)):
printvalue
输出:
0
2
4
6
8
itertools.imap(function,*iterables)
相当于迭代器方式的map() 例如:
importitertools
forvalueinitertools.imap(lambdax,y:xy,(1,2,3),(4,5,6)):
printvalue
输出:
5
7
9
itertools.islice(iterable, start,stop[,step])
相当于迭代器方式的切片操作 例如:
importitertools
forvalueinitertools.islice('abcdefg',1,4,2):
printvalue
输出:
b
d
itertools.repeat(object,[,times])
不停的返回object对象,如果指定了times,则返回times次 例如:
importitertools
forvalueinitertools.repeat('a',2):
printvalue
输出:
a
a
itertools.starmap(function,iterable)
返回function(iter)的值,iter为iterable的元素 例如:
importitertools
forvalueinitertools.starmap(lambdax,y:x*y,[(1,2),(3,4)]):
printvalue
输出:
2
12
itertools.takewhile(predicate,iterable)
如果predicate为真,则返回iterable元素,如果为假则不再返回,break. 例如:
importitertools
forvalueinitertools.takewhile(lambdax:x<5,[1,3,5,6]):
printvalue
输出:
1
3
python itertools模块_Python标准库:itertools模块相关推荐
- python的itertools库_Python标准库itertools模块使用方法
简介 官方描述:Functional tools for creating and using iterators.即用于创建高效迭代器的函数. itertools.chain(*iterable) ...
- 如何下载python模块_Python第三方库(模块)下载和安装(使用pip命令)
进行 Python 程序开发时,除了使用 Python 内置的标准模块以及我们自定义的模块之外,还有很多第三方模块可以使用,这些第三方模块可以借助 Python官方提供的查找包页面(https://p ...
- python groupby用法_Python 标准库实践之合并字典组成的列表
作者 | 陈祥安 来源 | Python学习开发 最近做了个数据合并的需求这里记录下: 要求如下: dict_of_list1 = [{"name": "zhangsan ...
- python字符串库函数_Python标准库概览(1):string
Python的 string 标准库保留了一些有用的函数和用于处理文本对象的类,现在我们来一起看一下Python的string标准库还有哪些我们不知道的有趣用法? 01.capwords()函数:将字 ...
- python文件管理包_Python标准库04 文件管理 (部分os包,shutil包)
Python标准库04 文件管理 (部分os包,shutil包) 在操作系统下,用户可以通过操作系统的命令来管理文件,参考.Python 标准库则允许我们从 Python 内部管理文件.相同的目的,我 ...
- print python 带回车_python标准库threading源码解读【二】
紧接着上一篇文章继续解析源码 甘蔗:python标准库threading源码解读[一]zhuanlan.zhihu.com 目录 Event的介绍和用法 Event源码解析 以后的内容尽量少一点并且 ...
- python标准库模块_Python标准库模块之heapq
该模块提供了堆排序算法的实现.堆是二叉树,最大堆中父节点大于或等于两个子节点,最小堆父节点小于或等于两个子节点. 创建堆 heapq有两种方式创建堆, 一种是使用一个空列表,然后使用heapq.hea ...
- python解析xml文件选用模块_Python标准库系列之xml模块
Python's interfaces for processing XML are grouped in the xml package. 带分隔符的文件仅有两维的数据:行和列.如果你想在程序之间交 ...
- inspect python模块_Python标准库inspect的具体使用方法
inspect模块用于收集python对象的信息,可以获取类或函数的参数的信息,源码,解析堆栈,对对象进行类型检查等等,有几个好用的方法: Doc:这样写到 The inspect module pr ...
最新文章
- linux按文件名排序ls,linux – 如何使用shell脚本按名称对文件进行排序
- awk读取txt生成mysql插入语句
- javaweb带父标签的自定义标签
- spark中的广播变量broadcast
- Git ----fatal: unable to access ‘https://gitee.com/***.git/‘: SSL certificate problem: unable
- Archive object standard check
- 百度地图 Android SDK - 个性化地图
- kdj买卖指标公式源码_通达信指标公式源码MACD背离KDJ背离指标
- go语言的iota是什么意思_go语言基础之iota枚举
- LeetCode-124.二叉树中的最大路径和
- 工作中的一点小技巧总结
- 5、手把手教React Native实战之盒子模型BoxApp
- 怎样查询网站关键字的排名
- windowsxp下载python下载视频_Python实现视频下载功能
- 程序员鸡汤_程序员之魂鸡汤
- 还在问java架构师路线?学习路线?十年京东架构师教你这样做
- 微信开放平台 公众号第三方平台开发 教程三 一键登录授权给第三方平台
- ubuntu禁止自动锁屏
- 10套苹果CMS模板打包下载/苹果CMS视频影视网站源码下载
- 关于“要不要做调研”
热门文章
- 让你更中立!腾讯微信进行灰度测试 “好看”变为“在看”
- 中兴首款5G旗舰手机来了:2月25日见!
- 炮轰小米后柔宇科技再发长文声明:无意碰瓷炒作
- VOIP术语及相关知识
- fatal: ‘origin‘ does not appear to be a git repository fatal: Could not read from remote repository.
- 易语言窗口c_句柄取进程名,易语言窗口句柄取进程文件名源码
- 作业调度进程c语言代码,进程调度 时间片轮转调度算法源代码(C语言)
- 一次函数的斜率公式_【海广教育数学口诀】初中数学学不会?公式这样记,让你做题效率翻倍!...
- Getmemory函数详解--内存操作的理解
- 目标追踪-背景差算法