2011-11-11 22 views
2

我想從單詞列表中創建一個由標籤分隔的單詞對列表。我認爲一種選擇可能是創建一個帶有「範圍」的矩陣,因爲我想讓所有的單詞相互結合。我需要單詞對列表進行進一步分析。如何創建一個單詞對列表

從單詞列表:

mama 
papa 
sister 
brother 

應該是輸出

mama papa 
sister brother 
mama sister 
papa sister 
brother mama 

等等....

人誰知道什麼是做到這一點的最好辦法?

+0

我嘗試了不同的腳本,我通過其他項目收集了不幸的是沒有成功!這就是爲什麼我在這裏問 –

回答

5
words = ["mama", "papa", "sister", "brother"] 
pairs = list(itertools.permutations(words, 2)) 
print pairs 

的使用注意事項我認爲這是你可能會問什麼排列。

+0

也許'itertools.permutations(words,2)'? '重複'是這個函數的一個無效關鍵字。 –

+0

更正。謝謝@Rob。 – ditkin

+0

謝謝,它工作正常,但我有一些與unicodes問題,雖然「# - * - 編碼:utf8 - * - 」他們仍然被破壞。我怎樣才能使輸出utf8可讀? –

6
words = ["mama", "papa", "sister", "brother"] 
pairs = list(itertools.product(words, repeat=2)) 
print pairs 

打印

[('mama', 'mama'), 
('mama', 'papa'), 
('mama', 'sister'), 
('mama', 'brother'), 
('papa', 'mama'), 
('papa', 'papa'), 
('papa', 'sister'), 
('papa', 'brother'), 
('sister', 'mama'), 
('sister', 'papa'), 
('sister', 'sister'), 
('sister', 'brother'), 
('brother', 'mama'), 
('brother', 'papa'), 
('brother', 'sister'), 
('brother', 'brother')] 
相關問題