如何最好地将代币存储在容器中?

2024-05-16 09:34:05 发布

您现在位置:Python中文网/ 问答频道 /正文

我对编程相当陌生,正在尝试用spacy包创建一个小型解析器。 我想做的是解析任何类型的文本(作为字符串),并存储每个单词及其POS标记。我想用一本字典来做这件事,其中每个单词都是键,它的词性标签是它的值,所以它看起来像这样:

    import spacy
    tokendictionary = {}
    nlp = spacy.load("en_core_web_sm")
    doc = nlp("I will not regret this, so this is not a regret.")
    for token in doc:
         tokendictionary[token] = token.pos_

我想得到这样的东西:

    {I: 'PRON', will: 'VERB', not: 'PART', regret: 'VERB', this: 'DET', ,: 'PUNCT', so: 'CCONJ', this: 'DET', is: 'AUX', not: 'PART', a: 'DET', regret: 'NOUN', .: 'PUNCT', Do: 'AUX', you: 'PRON', regret: 'VERB', this: 'DET', ?: 'PUNCT'}

但是,我知道我不能存储相同的密钥,但我需要存储每个令牌(如本例中的“后悔”标记),因此即使它出现两次或两次以上,也应单独存储并易于访问。哪种方法是最好的


Tags: 标记tokendocsonlpspacynotthis