Instruções

Passo 31

Após as declarações if existentes, crie outra para lançar um ValueError quando new_level já for o nível selecionado. Note que _level ainda não existe durante a inicialização, então use hasattr(self, '_level') para verificar se ele existe antes de comparar. Isso evita um AttributeError quando o objeto é criado pela primeira vez. Para a mensagem, use '{level}' is already the selected level., onde {level} deve ser substituído pelo nível atual.

O que fazer:

Testes:

  • Você deve ter uma terceira declaração `if` dentro do seu setter `level`.
  • Quando `new_level` for igual a `self.level`, você deve lançar um `ValueError` com a mensagem `'{level}' is already the selected level.`, onde `{level}` deve ser substituído pelo nível atual.
  • Sua declaração `if` deve usar `hasattr(self, '_level')` para verificar se `_level` existe antes de comparar.

Preview