Python笛卡尔积

Python笛卡尔积,python,Python,可能重复: 我正试图找出一些我无法理解的逻辑。假设我有以下数据结构: letters = ( ('b','c'), ('a','e','ee'), ('d','f'), ('e','y'), ) 我将如何迭代此过程以获得每个可能的字符串组合: bade cade bede cede beede ceede bafe cafe befe cefe beefe ceefe bady cady bedy cedy beedy ceedy bafy cafy befy

可能重复:

我正试图找出一些我无法理解的逻辑。假设我有以下数据结构:

letters = (
    ('b','c'),
    ('a','e','ee'),
    ('d','f'),
    ('e','y'),
)
我将如何迭代此过程以获得每个可能的字符串组合:

bade
cade
bede
cede
beede
ceede
bafe
cafe
befe
cefe
beefe
ceefe
bady
cady
bedy
cedy
beedy
ceedy
bafy
cafy
befy
cefy
beefy
ceefy
我会使用:


你在寻找笛卡尔积:@Dustin,我不认为你想要的是笛卡尔积,而是那些弦的组合。请记住,笛卡尔积是两组
A
B
之间的运算,其中
AxB={(A,B):A∈ A和b∈ B} 
字母前的
*
有什么用?它做什么?参数解包:[a,b,c]是a,b,c
for l in itertools.product(*letters):
    print ''.join(l)