Python笛卡尔积

Dus*_*tin 5 python

可能重复:
获取Python中一系列列表的笛卡尔积

我试图找出一些我无法理解的逻辑.说我有以下数据结构:

letters = (
    ('b','c'),
    ('a','e','ee'),
    ('d','f'),
    ('e','y'),
)
Run Code Online (Sandbox Code Playgroud)

我将如何迭代这个以获得每个可能的字符串组合:

bade
cade
bede
cede
beede
ceede
bafe
cafe
befe
cefe
beefe
ceefe
bady
cady
bedy
cedy
beedy
ceedy
bafy
cafy
befy
cefy
beefy
ceefy
Run Code Online (Sandbox Code Playgroud)

NPE*_*NPE 6

我用的是itertools.product():

for l in itertools.product(*letters):
    print ''.join(l)
Run Code Online (Sandbox Code Playgroud)

  • 参数解压缩:* [a,b,c]是a,b,c (2认同)