温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

python 内置迭代:itertools

发布时间:2020-10-26 09:41:39 阅读:672 作者:虎皮喵的喵 栏目:编程语言
Python开发者专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

无限循环 序列:itertools.cycle

import itertools
cs = itertools.cycle('ABC'# 注意字符串也是序列的一种
for c in cs:
    print(c)

运行结果:

A
B
C
A
B
C
:
:

无限循环 数字:itertools.count

#!/usr/bin/python
#-*- utf-8 -*-

import itertools

naturals = itertools.count(1)
for x in naturals:
    print x

运行结果:

1
2
3
:
:

有限循环1:itertools.repeat   通过参数进行设置

import itertools

ns = itertools.repeat('A'3)
for n in ns:
    print(n)

运行结果:

A
A
A

有限循环2:itertools.takewhile  通过判断进行限制

import itertools

natuals = itertools.count(1)
ns = itertools.takewhile(lambda x: x <= 10, natuals)
print (list(ns))

运行结果:

[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

有限循环3:itertools.chain   将两个参数连接起来循环一遍

import itertools

for c in itertools.chain('ABC''XYZ'):
    print(c)

运行结果:

A
B
C
X
Y
Z

有限迭代4:itertools.groupby   将邻近重复的分组

import itertools

for keygroup in itertools.groupby('AAABBBdCCAAAd'):
    print(key, list(group))

运行结果:

A ['A''A''A']
B ['B''B''B']['d']['C''C']
A ['A''A''A']['d']

忽略大小写

import itertools

for keygroup in itertools.groupby('AaaBBbcCAAa', lambda c: c.upper()):
    print(key, list(group))

运行结果:

A ['A''a''a']
B ['B''B''b']['c''C']
A ['A''A''a']

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI

开发者交流群×