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)