码迷,mamicode.com
首页 > 编程语言 > 详细

python值itertools模块

时间:2019-10-11 12:29:34      阅读:83      评论:0      收藏:0      [点我收藏+]

标签:生成   rto   tool   pre   list   个数   span   port   返回   

一、介绍

  itertools 是python的迭代器模块,itertools提供的工具相当高效且节省内存。使用这些工具,你将能够创建自己定制的迭代器用于高效率的循环。

 

 


 

 

二、模块使用与代码

 

1、元素的组合

  itertools.combinations(iterable, r)

  • iterable:一个可迭代对象。
  • r:取tierable对象中r个元素进行组合。

 

  注意:函数返回的时一个迭代器。

 

代码示例:

import itertools

x=[1,2,3]

combin_1=itertools.combinations(x,1)    #取1个数进行组合,生成的时一个迭代器
combin_2=itertools.combinations(x,2)    #取2个数进行组合,生成的是一个迭代器

print(combin_1:,list(combin_1))   #将迭代器转为列表并打印

print(\ncombin_1、combin_2的数据类型:,type(combin_1))

print(\n输出迭代器每次迭代内容:)
for i in combin_2:
    print(i)



‘‘‘
结果:

combin_1: [(1,), (2,), (3,)]

combin_1、combin_2的数据类型: <class ‘itertools.combinations‘>

输出迭代器每次迭代内容:
(1, 2)
(1, 3)
(2, 3)

‘‘‘

 

2、数据的排列

  itertools.combinations(iterable, r)

  • iterable:一个可迭代对象。
  • r:取tierable对象中r个元素进行组合。

 

  注意:函数返回的时一个迭代器。

 

import itertools

x=[1,2,3]

combin_1=itertools.permutations(x,1)    #取1个数进行组合,生成的时一个迭代器
combin_2=itertools.permutations(x,2)    #取2个数进行组合,生成的是一个迭代器

print(combin_1:,list(combin_1))   #将迭代器转为列表并打印

print(\ncombin_1、combin_2的数据类型:,type(combin_1))

print(\n输出迭代器每次迭代内容:)
for i in combin_2:
    print(i)


‘‘‘
结果:

combin_1: [(1,), (2,), (3,)]

combin_1、combin_2的数据类型: <class ‘itertools.permutations‘>

输出迭代器每次迭代内容:
(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)

‘‘‘

 

python值itertools模块

标签:生成   rto   tool   pre   list   个数   span   port   返回   

原文地址:https://www.cnblogs.com/dwithy/p/11653164.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!