spaCy - Token.set_extension 類方法



此類方法在 2.0 版本中引入。它在 Token 上定義了一個自定義屬性。完成後,該屬性將透過 Token._ 訪問。

引數

下表解釋了它的引數 -

名稱 型別 描述
name Unicode 此引數表示擴充套件要設定的屬性的名稱。例如,'his_attr' 將作為 doc._.his_attr 訪問。
default - 當未定義 getter 或方法時,它是屬性的可選預設值。
method 可呼叫物件 用於在物件上設定自定義方法。例如,token._.compare(other_token)。
getter 可呼叫物件 此屬性表示 getter 函式,它將獲取物件並返回屬性值。當用戶訪問 ._ 屬性時,主要呼叫它。
setter 可呼叫物件 此屬性表示 Setter 函式,它將獲取 Doc 和一個值,並修改物件。當用戶寫入 Token._ 屬性時,主要呼叫它。
Force 布林值 它將強制覆蓋現有屬性。

示例 1

Token.set_extension 類方法的示例如下 -

import spacy
nlp_model = spacy.load("en_core_web_sm")
from spacy.tokens import Token
fruit_getter = lambda token: token.text in ("apple", "pear", "banana")
Token.set_extension("is_fruit", getter=fruit_getter, force=True)
doc = nlp_model("I have an pear")
doc[3]._.is_fruit

輸出

True

示例 2

Token.set_extension 類方法的另一個示例如下 -

import spacy
nlp_model = spacy.load("en_core_web_sm")
from spacy.tokens import Token
fruit_getter = lambda token: token.text in ("apple", "pear", "banana")
Token.set_extension("is_fruit", getter=fruit_getter, force=True)
doc = nlp_model("I have a car")
doc[3]._.is_fruit

輸出

輸出如下所示 -

False
spacy_container_token_class.htm
廣告

© . All rights reserved.