Verifique o tipo de retorno
A flexibilidade do Python em relação aos tipos de dados é geralmente citada como uma das vantagens da linguagem. No entanto, às vezes isso pode causar problemas se tipos de dados incorretos passarem despercebidos. Você decidiu que, para garantir que seu código esteja fazendo exatamente o que você quer que ele faça, você verificará explicitamente os tipos de retorno em todas as suas funções e se certificará de que elas estão retornando o que você espera. Para fazer isso, você criará um decorador que verifica se o tipo de retorno da função decorada está correto.
Observação: assert
é uma palavra-chave que você pode usar para testar se algo é verdadeiro. Se você digitar assert condition
e condition
for True
, essa função não fará nada. Se condition
for False
, essa função gerará um erro. O tipo de erro que ele gera é chamado de AssertionError
.
Este exercício faz parte do curso
Como escrever funções em Python
Exercício interativo prático
Experimente este exercício preenchendo este código de exemplo.
def returns_dict(func):
# Complete the returns_dict() decorator
def wrapper(____):
result = ____
assert type(result) == dict
return result
____
@returns_dict
def foo(value):
return value
try:
print(foo([1,2,3]))
except AssertionError:
print('foo() did not return a dict!')