看板 Python 關於我們 聯絡資訊
本身PYTHON初學者 這個問題 我想了兩天了 怎麼寫都很遜, 煩請高手來指點 事情是這樣的... 我想把數個lists的元素組合起來 例如: # listOne,listTwo,listThree分別是 ['a','b','c'] ['d','e','f'] ['g','h','i'] tmp = "" combination = [] for i in listOne: for j in listTwo: for k in listThree: tmp = i + j + k combination.append(tmp) print combination 執行結果會是 ['adg', 'adh', 'adi', 'aeg', 'aeh', 'aei', 'afg', 'afh', 'afi', 'bdg', 'bdh', 'bdi', 'beg', 'beh', 'bei', 'bfg', 'bfh', 'bfi', 'cdg', 'cdh', 'cdi', 'ceg', 'ceh', 'cei', 'cfg', 'cfh', 'cfi'] 我的問題是,如果今天我的lists不只三個 (可能會有100個) 除了for迴圈寫一百行, 還有什麼比較快的方法呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.5.131 ※ 編輯: marketcos 來自: 140.113.5.131 (12/12 15:57)
darkgerm:如果有100個而且每個都是3個元素的話就有3^100個耶 12/12 16:52
mikapauli:lists=[...] 12/12 19:10
mikapauli:c=[''] 12/12 19:11
mikapauli:for l in lists: 12/12 19:12
mikapauli: c=[i+j for i in c for j in l] 12/12 19:13
mikapauli:print(c) 12/12 19:16