查找字典中的所有可能性(Python 2.7)



我有以下python字典:

{main1: {x: 1, y: 2}, main2: {a: 1, b: 2}}

我需要的结果是所有可能的组合,比如:

{main1: {x: 1}}
{main1: {y: 2}}
{main1: {x: 1, y:2}}
{main2: {a: 1}}
{main1: {x: 1}, main2: {a: 1}}
{main1: {y: 2}, main2: {a: 1}}
{main1: {x: 1, y:2}, main2: {a: 1}}
...

等。我觉得有一些蟒蛇的解决方案,但我找不到。什么好主意吗?

itertools.combinations()

可能对你有帮助。你可以把它叫做,在基本循环中得到大小为1 2等的组合。

试试这个:

import itertools
[zip(x,main2) for x in itertools.combinations(main1,len(main2))]

最新更新