从给定的 python 集中生成具有所有 k 组合的 k 元组的最有效方法是什么?有合适的内置函数吗?有些东西告诉我应该可以使用两行 for 循环。
PS我确实进行了搜索,发现“Python中的列表组合等”主题的各种条目,但所有提出的解决方案似乎都相当“非python”。我希望有一个令人兴奋的、惯用的 Python 表达式。
从给定的 python 集中生成具有所有 k 组合的 k 元组的最有效方法是什么?有合适的内置函数吗?有些东西告诉我应该可以使用两行 for 循环。
PS我确实进行了搜索,发现“Python中的列表组合等”主题的各种条目,但所有提出的解决方案似乎都相当“非python”。我希望有一个令人兴奋的、惯用的 Python 表达式。
itertools
具有所有这些类型的功能:
import itertools
for combination in itertools.combinations(iterable, k):
print(combination)