ComeçarComece de graça

Definindo atributos de extensão (2)

Vamos definir alguns atributos mais complexos usando getters e extensões de método. O objeto nlp já foi criado para você e as classes Doc, Token e Span já foram importadas.

Lembre-se: se você executar seu código mais de uma vez, pode aparecer uma mensagem de erro dizendo que a extensão já existe. Isso acontece porque o DataCamp executa novamente seu código na mesma sessão. Para resolver, você pode definir force=True em set_extension, ou recarregar para iniciar uma nova sessão do Python. Nada disso vai afetar a resposta que você enviar.

Este exercício faz parte do curso

NLP Avançado com spaCy

Ver curso

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

# 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:', ____)
Editar e executar o código