Aan de slagGa gratis aan de slag

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

Cursus bekijken

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:', ____)
Code bewerken en uitvoeren