python - 如何在 Python 中对 itertools.product 进行排序?

标签 python

这是 itertools 的产品:

product('ABCD', 'xy') --> Ax Ay Bx By Cx Cy Dx Dy

但我想更改为:--> Ax Bx Cx Dx Ay By Cy Dy 我该怎么做?

最佳答案

更改参数和反转元组的顺序 product产量。它可能比排序更有效,因为它不需要构建中间列表。

from itertools import product

def reorder_product(*a):
    for tup in product(*a[::-1]):
        yield tup[::-1]

例子:

print(*[''.join(t) for t in reorder_product('ABCD', 'xy')])
# Output:
#     Ax Bx Cx Dx Ay By Cy Dy

关于python - 如何在 Python 中对 itertools.product 进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32998441/

相关文章:

python - 如何在 Python 中使用 JMX?

python3 : regex group 1, 意外结果

python - 有没有办法在不同模块之间传递Python中的类对象并保留命名空间?

python - Tornado使用WSGI来处理python文件吗?

python - 是否可以在 discord.py 中对不同的前缀使用不同的命令?

python - Mac : new-line character seen in unquoted field 中 Django 中的 csv 文件上传错误

python - 对 Docker 化 Flask 应用程序进行单元测试时出现断言错误(200 成功!= 400 错误请求)

python - 在Scrapy中,如何将正则表达式中的两个组提取到两个不同的字段中?

python - 在 Mako 中编码 JSON?

python - 在 pandas 中将带有 NaN 的字符串转换为 int