如何创建单词对列表
我想从一个单词列表中创建一个用制表符分隔的单词对列表。我觉得一个选择是用“范围”来创建一个矩阵,因为我想把所有单词都组合在一起。我需要这个单词对列表来进行进一步的分析。
从一个单词列表:
mama
papa
sister
brother
应该是这样的输出
mama papa
sister brother
mama sister
papa sister
brother mama
还有其他的....
有没有人知道最好的方法来做到这一点?
2 个回答
7
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')]
5
words = ["mama", "papa", "sister", "brother"]
pairs = list(itertools.permutations(words, 2))
print pairs
注意这里提到了“排列”,我觉得这可能是你想问的内容。