假设我有一个像这样的字符串:
'velvet evening purse bags'
我怎样才能得到这个的所有单词对?换句话说,所有这两个词的组合:
'velvet evening'
'velvet purse'
'velvet bags'
'evening purse'
'evening bags'
'purse bags'
我知道 python 的 nltk
包可以提供双字母组,但我正在寻找超出该功能的东西。还是我必须用 Python 编写自己的自定义函数?
最佳答案
您可以使用 itertools.combinations
为此:
s = 'velvet evening purse bags'
from nltk import word_tokenize
words = word_tokenize(s)
from itertools import combinations
pairs = [' '.join(comb) for comb in combinations(words, 2)]
print(pairs)
输出:
['velvet evening', 'velvet purse', 'velvet bags', 'evening purse', 'evening bags', 'purse bags']
关于python - 从句子中获取所有右分支词对,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57546530/