使用 spacy 语言返回的令牌时,`token.i+1` 中的 `i` 是什么意思?

哈迪蒙泽
from spacy.language import Language

@Language.component("CustomB")
def set_custom_boundaries(doc):
    for token in doc[:-1]:
        if token.text == ';':
            doc[token.i+1].is_sent_start = True
    return doc
nlp.add_pipe("CustomB",before="parser")

我只需要知道i+1在这段代码中做了什么:

doc[token.i+1]

知道i没有在函数中定义,既不是索引也不是简单变量。

哈迪·哈吉侯赛尼

i不是一个单独的变量。它是 的一个属性token请注意,它不是i+1,而是token.i + 1i来自token对象。i首先 python 获取from的值,token然后将其增加一。

考虑下面的例子:

class X:
    i = 10

token = X()

print(token.i+1) # it is in fact (token.i) + 1 so result is: 11

如果您有任何问题,请提出。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章