python - 计算所有排列,包括所有子列表

标签 python python-3.x statistics permutation

例如,如果我有一个列表:

my_list = [a,b,c,d]

如何计算所有排列包括所有子组的排列。此示例的部分结果为:

permutations = [a,b,c,d,ab,ba,ac,ca,...,abc,acb,abd,...,abcd,abdc,acdb,...]

最佳答案

您可以迭代从 1 到 my_list 长度范围内的大小,并使用 itertools.permutations 获取给定大小的所有排列:

from itertools import permutations
my_list = ['a','b','c','d']
[''.join(p) for i in range(1, len(my_list) + 1) for p in permutations(my_list, i)]

这将返回:

['a', 'b', 'c', 'd', 'ab', 'ac', 'ad', 'ba', 'bc', 'bd', 'ca', 'cb', 'cd', 'da', 'db', 'dc', 'abc', 'abd', 'acb', 'acd', 'adb', 'adc', 'bac', 'bad', 'bca', 'bcd', 'bda', 'bdc', 'cab', 'cad', 'cba', 'cbd', 'cda', 'cdb', 'dab', 'dac', 'dba', 'dbc', 'dca', 'dcb', 'abcd', 'abdc', 'acbd', 'acdb', 'adbc', 'adcb', 'bacd', 'badc', 'bcad', 'bcda', 'bdac', 'bdca', 'cabd', 'cadb', 'cbad', 'cbda', 'cdab', 'cdba', 'dabc', 'dacb', 'dbac', 'dbca', 'dcab', 'dcba']

关于python - 计算所有排列,包括所有子列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55145927/

相关文章:

r - OpenBUGS 无法收敛于 WinBUGS 中收敛的模型。精度极限?

matlab - 如果我将对数似然分解为它的总和,MLE 似然评估怎么会如此不同?

python - 从数组到 MySQL

python - 在 driver.execute_script() 中使用伪选择器时无法将某些元素滚动到 View 中

python - 在 python 子进程中捕获 logger.info 输出?

python - 识别并中断异常 : 'OpenSSL.SSL.Error' using python's requests module

python - 如何使用 python 自动缩放 azure data explorer(ADX) kusto 集群(优化/自定义)

python - 如何在Python3.7中使用pydensecrf?

python - 让 python 变得更紧凑,是否会提高它的效率?

python - 如何使用 Python 检查面板数据中的单位根?