我有一个字符串列表。我想找到该列表的所有可能组合。我使用itertools.permutation并运行了一段时间,但随后崩溃,提示内核死亡,重新启动。我也尝试通过终端运行代码。但是它也在那里崩溃。这是我的代码:
import itertools
sum_stats = ['pi', 'theta W','Tajima D','distVar','distSkew','distKurt','nDiplos',
'diplo_H1','diplo_H12','diplo_H2/H1','diplo_ZnS','diplo_Omega']
permuted_sum_stats = list(itertools.permutations(sum_stats))
有人可以告诉我一种创建此列表所有可能组合的有效方法吗?
答案 0 :(得分:2)
您的列表包含12个元素。为了获得所有可能的排列,您的新列表需要12!或大约5亿个元素。这些列表之一占用大约150个字节,不包括字符串的空间,我认为这些空间已被重用。
这导致大约75 GB的数据,可能比计算机的RAM多。