diff --git a/aula151.py b/aula151.py new file mode 100644 index 0000000..80f06a0 --- /dev/null +++ b/aula151.py @@ -0,0 +1,37 @@ +# Funções decoradoras e decoradores com classes + +def meu_repr(self): + class_name = self.__class__.__name__ + class_dict = self.__dict__ + class_repr = f'{class_name}({class_dict})' + return class_repr + + +def adiciona_repr(cls): + cls.__repr__ = meu_repr + return cls + + +@adiciona_repr +class Time: + def __init__(self, nome): + self.nome = nome + + +@adiciona_repr +class Planeta: + def __init__(self, nome): + self.nome = nome + + +brasil = Time('Brasil') +portugal = Time('Portugal') + +terra = Planeta('Terra') +marte = Planeta('Marte') + +print(brasil) +print(portugal) + +print(terra) +print(marte)