如何从spacy的词汇表中获取所有单词?

19

我需要Spacy词汇表中的所有单词。假设,我将我的Spacy模型初始化为

nlp = spacy.load('en')

我如何从nlp.vocab中获取单词文本?


你需要什么?是针对英语的spacy词汇字典吗? - Green
1
是的。我正在尝试使用nlp.vocab,而无需从URL显式下载它。然后,将其用作拼写纠正(symspell)的语料库。 - pauli
还有相关的内容,请参考 https://dev59.com/hrjna4cB1Zd3GeqP8lew - Davide Fiocco
2个回答

35

你可以像这样将其作为列表获得:

list(nlp.vocab.strings)

8

从spaCy v3.0开始,我们需要运行

python -m spacy download en_core_web_sm

然后例如:

import spacy
nlp = spacy.load("en_core_web_sm")
words = set(nlp.vocab.strings)
word = 'would'
print(f"Is '{word}' an English word: {word in words}")  # True

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接