【发布时间】:2016-12-07 21:23:48
【问题描述】:
我想生成在字典中索引的列表中的所有值组合:
{'A':['D','E'],'B':['F','G','H'],'C':['I','J']}
每次,每个 dict 条目的一个项目都会被挑选出来并与其他键的项目组合,所以我有:
['D','F','I']
['D','F','J']
['D','G','I']
['D','G','J']
['D','H','I']
...
['E','H','J']
我知道有一些东西可以在itertools 的列表中生成项目组合,但我认为我不能在这里使用它,因为我有不同的值“池”。
是否有任何现有的解决方案可以做到这一点,或者我应该如何自己去做,我完全被这种嵌套结构所困扰。
【问题讨论】:
-
那你应该试着写代码来做,有问题再回来。
-
itertools.product(*yourdict.values()) -
字典未排序!请澄清。
-
我尝试编写代码但卡住了,我实际上正在寻找一个现有的解决方案,而不是浪费我的时间......我不明白你为什么说字典没有排序,我知道这与我的问题无关,我想要组合,而不是排列。 @Phillip:谢谢,我正在尝试。
-
您接受了订单。为什么
D是第一个字母,而不是...说F?
标签: python dictionary combinations