single
Desafio: Representação e Comparação de Usuários
Deslize para mostrar o menu
Existem muitos métodos mágicos em Python, não consideramos todos eles, mas outros não são usados com tanta frequência.
Vamos voltar ao seu código. Sua classe User não tem representação, e você não pode imprimir informações do usuário usando a construção print(user). Além disso, há momentos em que você precisa verificar um nome de usuário ou ID de usuário com a instância do usuário (conta) que realizou ações em sua aplicação.
Nota
Os comentários
O novo código está abaixoeO novo código está acimavão ajudá-lo a encontrar um novo código para edição.Além disso, você precisa adicionar atributos de classe ao código existente.
Swipe to start coding
- Crie um atributo de classe
rolecom o valor"User"dentro da classeUser. - Crie um atributo de classe
rolecom o valor"Admin"dentro da classeAdmin. - Defina o método mágico de representação dentro da classe
User. Este método deve retornar a string"{role}: {username}".
Por exemplo ("Admin: greatest.admin"). - Defina o método mágico de comparação para a operação
==. Este método deve comparar:- se os dados recebidos são uma instância de
User- comparar o username da instância e o username da instância recebida. - se os dados recebidos são uma string - comparar o username da instância e a string recebida.
- se os dados recebidos têm outro tipo de dado - o método deve retornar
False.
- se os dados recebidos são uma instância de
Solução
Obrigado pelo seu feedback!
single
Pergunte à IA
Pergunte à IA
Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo