我不明白 .text 在 spacy 代码中的用途是什么

I don't understand what is the purpose of .text in spacy code

我有以下代码:

    from spacy.lang.en import English

    nlp = English()

    # Process the text
    doc = nlp("I like tree kangaroos and narwhals.")

    # Select the first token
    first_token = doc[0]

    # Print the first token's text
    print(first_token**.text**)

代码末尾的 .text 的问题是,即使我省略它,一切都正常。 我在 spacy 编码中多次看到 .text 方法,但我不明白它在做什么。 我的问题很简单,这个 .text 方法在做什么?

注意 doc[0]Token,不是字符串。

使用 .text 返回您的 Token 对象持有的字符串。 Token 也可以有很多其他属性。

当打印 Token 个对象时,表示只是文本!—参见 the source code。这就是为什么当您打印 first_tokenfirst_token.text.

时它们看起来一样

高级用户资料;如果你想跳过: 如果你想了解为什么 Token 和字符串对象之间的行为不同,请尝试将两个 Token+ 连接起来,或者比较它们平等。他们没有实现 __eq__,所以比较只是基于 Token 在内存中的地址。