Python标准库--itertools模块

itertools模块:处理可迭代对象

chain()和islice()、tee()

chain:合并迭代器

islice:切割迭代器,start,end,step

tee:复制迭代器,新迭代器共享输入迭代器, 新迭代器之间不影响

from itertools import *

# for i in chain([1, 2, 3], [‘a‘, ‘b‘, ‘c‘]):
#     print(i)
#
# for i in islice(count(), 0, 100, 10):
#     print(i)

r = islice(count(), 5)
i1, i2 = tee(r)
# print(list(i1))
# print(list(i2))

for i in r:
    print(i)
    if i > 0:
        break

for i in i1:
    print(i)
    if i > 1:
        break

print(list(i1))
print(list(i2))

startmap()

values = [(0, 5), (1, 6), (2, 7)]

for i in starmap(lambda x, y: (x, y, x * y), values):
    print(i)

# (0, 5, 0)
# (1, 6, 6)
# (2, 7, 14)

count()、cycle()、repeat()

for i in count():
    print(i)

for i in cycle([‘a‘, ‘b‘, ‘c‘]):
    print(i)

for i in repeat(2,5):
    print(i)

takewhile()、dropwhile()、filterfase()

takewhile:一旦条件为false,停止处理

dropwhile:条件为false,开始处理

filterfase:只处理条件为false

def should_drop(x):
    return x < 1

for i in dropwhile(should_drop, [-1, 0, 1, 2, -2]):
    print(i)

def should_take(x):
    return x < 2

for i in takewhile(should_take, [-1, 0, 1, 2, -2]):
    print(i)

def check_item(x):
    return x < 1

for i in filterfalse(check_item, [-1, 0, 1, 2, -2]):
    print(i)

groupby()

时间: 2024-08-13 01:38:08

Python标准库--itertools模块的相关文章

Python 标准库 ConfigParser 模块 的使用

Python 标准库 ConfigParser 模块 的使用 demo #!/usr/bin/env python # coding=utf-8 import ConfigParser import sys config = ConfigParser.ConfigParser() #写入 config.add_section("Inc_basic") config.set("Inc_basic","name","iPIN")

[python标准库]XML模块

1.什么是XML XML是可扩展标记语言(Extensible Markup Language)的缩写,其中的 标记(markup)是关键部分.您可以创建内容,然后使用限定标记标记它,从而使每个单词.短语或块成为可识别.可分类的信息. XML有以下几个特点. XML的设计宗旨是传输数据,而非显示数据. XML标签没有被预定义.您需要自行定义标签. XML被设计为具有自我描述性. XML是W3C的推荐标准. 其解析流程如下图: 2.常用解析XML的Python包 Python的标准库中,提供了6种

【python】Python标准库defaultdict模块

来源:http://www.ynpxrz.com/n1031711c2023.aspx Python标准库中collections对集合类型的数据结构进行了很多拓展操作,这些操作在我们使用集合的时候会带来很多的便利,多看看很有好处. defaultdict是其中一个方法,就是给字典value元素添加默认类型,之前看到过但是没注意怎么使用,今天特地瞅了瞅. 首先是各大文章介绍的第一个例子: 代码如下: import collections as coll def default_factory()

Python标准库--os模块

这个模块包含普遍的操作系统功能.如果你希望你的程序能够与平台无关的话,这个模块是尤为重要的.即它允许一个程序在编写后不需要任何改动,也不会发生任何问题,就可以在Linux和Windows下运行.一个例子就是使用os.sep可以取代操作系统特定的路径分割符. 下面列出了一些在os模块中比较有用的部分.它们中的大多数都简单明了. os.name字符串指示你正在使用的平台.比如对于Windows,它是'nt',而对于Linux/Unix用户,它是'posix'. os.getcwd()函数得到当前工作

[python标准库]Logging模块

1.模块简介 logging模块是Python内置的标准模块,主要用于输出运行日志,可以设置输出日志的等级.日志保存路径.日志文件回滚等:相比print,具备如下优点: 可以通过设置不同的日志等级,在release版本中只输出重要信息,而不必显示大量的调试信息: print将所有信息都输出到标准输出中,严重影响开发者从标准输出中查看其它数据:logging则可以由开发者决定将信息输出到什么地方,以及怎么输出: 模块提供logger,handler,filter,formatter. logger

Python——标准库 Sys模块

------------------------------------------------------------------------------------------------------ sys 模块提供了许多函数和变量来处理 Python 运行时环境的不同部分. 处理命令行参数 在解释器启动后, argv 列表包含了传递给脚本的所有参数, 列表的第一个元素为脚本自身的名称. ---------------------------------------------------

[python标准库]Time模块

在python中,通常有以下几种方式来表示时间: 时间戳:表示的是从1970年1月1日00:00:00开始按秒计算的偏移量. 格式化时间:struct_time元组共有9个元素共九个元素:(年,月,日,时,分,秒,一年中第几周,一年中第几天,夏令时) 字符串时间:xxx年xxx月xxxx日 import time s1 = time.localtime(23213123) # 将时间戳转化为结构化时间 s2 = time.mktime() # 将结构化时间转化为时间戳 s3 = time.str

Python标准库--re模块

re:正则表达式 __all__ = [ "match", "fullmatch", "search", "sub", "subn", "split", "findall", "finditer", "compile", "purge", "template", "escape&

Python标准库--functools模块

functools模块:管理函数的工具 partial对象:包装原函数,提供默认值 import functools # 原函数 def myfunc(a, b=2): """Docstring for myfunc().""" print(' called myfunc with:', a, b) return # 输出函数 def show_details(name, f, is_partial=False): print(name) pri