Extensie-attributen instellen (2)
Laten we wat complexere attributen instellen met getters en methode-extensies. Het nlp-object is al voor je aangemaakt en de classes Doc, Token en Span zijn al geïmporteerd.
Onthoud: als je je code meer dan één keer uitvoert, kun je een foutmelding zien dat de extensie al bestaat. Dat komt omdat DataCamp je code in dezelfde sessie opnieuw uitvoert. Om dit op te lossen, kun je force=True zetten bij set_extension, of herladen om een nieuwe Python-sessie te starten. Dit heeft geen invloed op het antwoord dat je indient.
Deze oefening maakt deel uit van de cursus
Geavanceerde NLP met spaCy
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Define the getter function
def get_has_number(doc):
# Return if any of the tokens in the doc return True for token.like_num
return any(____ for token in doc)
# Register the Doc property extension 'has_number' with the getter get_has_number
____.____(____, ____=____)
# Process the text and check the custom has_number attribute
doc = nlp("The museum closed for five years in 2012.")
print('has_number:', ____)