📜  Python – Itertools.Permutations()(1)

📅  最后修改于: 2023-12-03 15:04:10.581000             🧑  作者: Mango

Python – Itertools.Permutations()

itertools.permutations()是Python编程语言中的一个函数,可以查找并返回给定可迭代对象中指定长度的所有可能排列。不同于Python自带函数permutations(), itertools.permutations()函数以迭代器形式返回排列,而不是以列表形式返回。

语法
itertools.permutations(iterable, r=None)
参数

iterable:表示要查找排列的可迭代对象,例如列表、元组等。

r:表示要进行排列的长度,如果未提供此参数,则默认为可迭代对象的长度。

返回值

itertools.permutations()函数将返回一个迭代器对象,其中包含给定可迭代对象中指定长度的所有排列。

示例
import itertools

# 返回给定列表中长度为2的所有排列
permutations = itertools.permutations([1, 2, 3, 4], 2)
for permutation in permutations:
    print(permutation)

输出结果为:

(1, 2)
(1, 3)
(1, 4)
(2, 1)
(2, 3)
(2, 4)
(3, 1)
(3, 2)
(3, 4)
(4, 1)
(4, 2)
(4, 3)
注意事项

请注意,如果提供了长度r,则迭代器将生成所有长度为r的排列。在此情况下,如果给定的可迭代对象中有重复元素,则最终结果将包括重复排列。如果不提供长度r,则默认将迭代器生成包含所有原始元素的排列。