python—http 工具。交换()
哎哎哎:# t0]https://www . geeksforgeeks . org/python-etrtools-switchions/
Itertool 是 Python 提供的一个模块,用于创建迭代器以实现高效的循环。它还提供了与迭代器一起工作的各种特性或函数,以生成复杂的迭代器,并帮助我们轻松高效地解决时间和内存方面的问题。Itertools 模块为我们提供了各种方法来操作我们正在遍历的序列。
该模块提供的不同类型的迭代器有:
注:更多信息请参考 Python Itertools
itertools()
Itertools.permutation()
功能属于组合生成器。用于简化组合结构(如排列、组合和笛卡尔乘积)的递归生成器称为组合迭代器。
如单词“置换”所理解的,它指的是集合或串可以被排序或排列的所有可能的组合。类似地,这里itertool.permutations()
方法为我们提供了迭代器可能存在的所有可能的排列,并且所有元素都被假定为基于位置而不是基于值或类别是唯一的。所有这些排列都是按照字典顺序排列的。函数itertool.permutations()
将一个迭代器和“r”(需要的排列长度)作为输入,并假设“r”是迭代器的默认长度(如果没有提到的话),并返回每个长度“r”的所有可能的排列。
语法:
Permutations(iterator, r)
实施例 1:-
from itertools import permutations
a = "GeEK"
# no length entered so default length
# taken as 4(the length of string GeEK)
p = permutations(a)
# Print the obtained permutations
for j in list(p):
print(j)
输出:-
('G', 'e', 'E', 'K')
('G', 'e', 'K', 'E')
('G', 'E', 'e', 'K')
('G', 'E', 'K', 'e')
('G', 'K', 'e', 'E')
('G', 'K', 'E', 'e')
('e', 'G', 'E', 'K')
('e', 'G', 'K', 'E')
('e', 'E', 'G', 'K')
('e', 'E', 'K', 'G')
('e', 'K', 'G', 'E')
('e', 'K', 'E', 'G')
('E', 'G', 'e', 'K')
('E', 'G', 'K', 'e')
('E', 'e', 'G', 'K')
('E', 'e', 'K', 'G')
('E', 'K', 'G', 'e')
('E', 'K', 'e', 'G')
('K', 'G', 'e', 'E')
('K', 'G', 'E', 'e')
('K', 'e', 'G', 'E')
('K', 'e', 'E', 'G')
('K', 'E', 'G', 'e')
('K', 'E', 'e', 'G')
实施例 2:-
from itertools import permutations
print ("All the permutations of the given list is:")
print (list(permutations([1, 'geeks'], 2)))
print()
print ("All the permutations of the given string is:")
print (list(permutations('AB')))
print()
print ("All the permutations of the given container is:")
print(list(permutations(range(3), 2)))
输出:-
All the permutations of the given list is:
[(1, 'geeks'), ('geeks', 1)]
All the permutations of the given string is:
[('A', 'B'), ('B', 'A')]
All the permutations of the given container is:
[(0, 1), (0, 2), (1, 0), (1, 2), (2, 0), (2, 1)]
版权属于:月萌API www.moonapi.com,转载请注明出处