itertools模块:循环器

一,无穷循环器:count,cycle,repeat

(1)count(5,3)   #从5开始的整数循环器,每次增加3,即:5,8,11,14,17...

from itertools import *
import time
a = count(5,3)
for i in a:
print(i)
time.sleep(1) 输出结果为:
5
8
11
14
17
20
23
26
(2)cycle('zxy')  #重复元素x y z x y z x y z... 

from itertools import *
import time s = cycle('xyz') for i in s:
print(i)
time.sleep(1) 输出结果为:
x
y
z
x
y
z
x
y
z
repeat()   #重复元素

例1:
from itertools import *
import time s = repeat(3.14) #无限重复元素 for i in s:
print(i)
time.sleep(1) 输出结果为:
3.14
3.14
3.14
3.14
3.14
3.14 例2:
from itertools import *
import time s = repeat(3,5) #重复元素3,共5次 for i in s:
print(i)
time.sleep(1) 输出结果为:
3
3
3
3
3

二,函数式工具:starmap,takewhile,dropwhile

(1)starmap()    #跟map类似

from itertools import *

s = starmap(pow,[(1,1),(2,2),(3,3)])  #pow()求指数1**1,2**2,3**3
for i in s:
print(i) 输出结果为:
1
4
27 (2)takewhile() #当函数返回True时,收集元素到循环器。一旦函数返回False,则停止。 from itertools import * s1 = takewhile(lambda x: x < 5, [1,2,3,4,5,6,7])
for i in s1:
print(i) 输出结果为:
1
2
3
4 (3)dropwhile() #与takewhile相反。 s2 = dropwhile(lambda x: x < 5, [1,2,3,4,5,6,7])
for i in s2:
print(i) 输出结果为:
5
6
7

Python模块:itertools的更多相关文章

  1. Python 模块 itertools

    python 2.6 引入了itertools模块,使得排列组合的实现非常简单: import itertools 有序排列:e.g., 4个数内选2个排列: >>> print l ...

  2. Python标准模块--itertools

    1 模块简介 Python提供了itertools模块,可以创建属于自己的迭代器.itertools提供的工具快速并且节约内存.开发者可以使用这些工具创建属于自己特定的迭代器,这些特定的迭代器可以用于 ...

  3. Python的itertools模块

    本章将介绍Python自建模块itertools,更多内容请参考:Python参考指南 python的自建模块itertools提供了非常有用的用于操作迭代对象的函数. 首先,我们看看itertool ...

  4. python 之 itertools模块

    官方:https://yiyibooks.cn/xx/python_352/library/itertools.html 参考: https://blog.csdn.net/neweastsun/ar ...

  5. 【Python开发】Python:itertools模块

    Python:itertools模块 itertools模块包含创建有效迭代器的函数,可以用各种方式对数据进行循环操作,此模块中的所有函数返回的迭代器都可以与for循环语句以及其他包含迭代器(如生成器 ...

  6. python模块大全

    python模块大全2018年01月25日 13:38:55 mcj1314bb 阅读数:3049 pymatgen multidict yarl regex gvar tifffile jupyte ...

  7. python基础=== itertools介绍(转载)

    原文链接:http://python.jobbole.com/85321/ Python提供了一个非常棒的模块用于创建自定义的迭代器,这个模块就是 itertools.itertools 提供的工具相 ...

  8. 四十六 常用内建模块 itertools

    Python的内建模块itertools提供了非常有用的用于操作迭代对象的函数. 首先,我们看看itertools提供的几个“无限”迭代器: >>> import itertools ...

  9. Python3之内建模块itertools

    python的内建模块itertools提供了非常有用的用于操作迭代对象的函数 首先,我们看看itertools提供的几个无限迭代器 >>> import itertools > ...

  10. python之itertools

    Python的内建模块itertools提供了非常有用的用于操作迭代对象的函数. count 创建一个迭代器,生成从n开始的连续整数,如果忽略n,则从0开始计算(注意:此迭代器不支持长整数) 如果超出 ...

随机推荐

  1. ios 自定义键盘

    由于项目需要,需要自定义键盘.ios系统键盘会缓存键盘输入,并保存在系统目录下的文件里,并且是明文存储,存在帐号密码泄漏风险.在别人代码基础上修改了下,美化了下界面,去掉了字符输入,加了点击特效,截图 ...

  2. STL之序列式容器list与forward_list

    List (双向链表) 与 forwardlist (单向链表) 算是非常基础的数据结构了,这里只是简单介绍下其结构及应用. 以list为例: 其节点模板: template <class T& ...

  3. [转] ACM中国国家集训队论文集目录(1999-2009)

    国家集训队1999论文集 陈宏:<数据结构的选择与算法效率——从IOI98试题PICTURE谈起>来煜坤:<把握本质,灵活运用——动态规划的深入探讨>齐鑫:<搜索方法中的 ...

  4. MySQL学习(一)

    mysql left join,right join,inner join用法分析 left join:是以A表的记录为基础的,A可以看成左表,B可以看成右表,left join是以左表为准的. 换句 ...

  5. Android7.0 新特性

    删除了三个隐式广播 1.监听网络变化的广播 CONNECTIVITY_ACTION,在Manifest.xml中注册的 不会受到,在前台运行的程序 registerReceiver()注册的广播可以接 ...

  6. 1.mysql基础之 php 连接

    1.连接数据库 $db=@mysql_connect('DB_HOST','DB_USER','DB_PASS') or die("Unable to connect"); DB_ ...

  7. Objective - C - 添加类目 - NSDate

    1.类目为系统内部的类或者是没有源代码的类添加方法,不有添加实例变量 2.添加的方法会成为原类的一部分,子类照样可以使用 3.类目的文件名为原类名+文件名 4.既可以添加实例方法,也可以添加类方法 X ...

  8. Mac下命令行中用sublime打开指定文件 设置方法

    sublime2版本 官网提供的方法:sublime2 官网提供的方法是:ln -s "/Applications/Sublime Text 2.app/Contents/SharedSup ...

  9. 登陆+注册(三层+sql语句)

    啰嗦:今天面试,遇到这个上级测试,很容易的,因为一个错误,居然最后没做出来,心累 回到家,1小时做完,我特么还加了密,我还验证,可是上天不给我一次重来的机会啊 很垃圾的,小白可以看看,大神可以轻喷 首 ...

  10. PHP在linux上执行外部命令

    PHP在linux上执行外部命令 一.PHP中调用外部命令介绍二.关于安全问题三.关于超时问题四.关于PHP运行linux环境中命令出现的问题 一.PHP中调用外部命令介绍在PHP中调用外部命令,可以 ...