gpt4 book ai didi

python - 在 Python 中获取排列,itertools

转载 作者:太空宇宙 更新时间:2023-11-04 06:45:53 25 4
gpt4 key购买 nike

我想使用 itertools 从字母表中的每个字母中获取所有可能的 3 个字母排列。这返回空白:

import itertools 

def permutations(ABCDEFGHIJKLMNOPQRSTUVWXYZ, r=3):
pool = tuple(iterable)
n = len(pool)
r = n if r is None else r
for indices in product(range(n), repeat=r):
if len(set(indices)) == r:
yield tuple(pool[i] for i in indices)

我做错了什么?

最佳答案

你有点糊涂了,那只是解释permutations 作用的代码。 itertools 实际上是用 C 代码编写的,python equivalent 只是为了展示它是如何工作的。

>>> from itertools import permutations
>>> from string import ascii_uppercase
>>> for x in permutations(ascii_uppercase, r=3):
print x


('A', 'B', 'C')
('A', 'B', 'D')
('A', 'B', 'E')
('A', 'B', 'F')
.....

应该没问题

关于python - 在 Python 中获取排列,itertools,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11840187/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com