1
resposta

[Sugestão] abstractmethod está obsoleto em algumas versoes do python

sujestao para melhorar o metodo abstrato, caso esteja obsoleto na sua versao do python

from abc import ABC, abstractmethod

class ItemCardapio(ABC):
    def __init__(self, nome, preco):
        self._nome = nome
        self._preco = preco

    @classmethod
    @abstractmethod
    def aplicar_desconto(cls):
        pass

Garanta sua matrícula hoje e ganhe + 2 meses grátis

Continue sua jornada tech com ainda mais tempo para aprender e evoluir

Quero aproveitar agora
1 resposta

Uma excelente dica!

Só para esclarecer quem está obsoleto é o abstractclassmethod, que é o que a sua implementação resolve, o abstractmethod continua como a maneira correta para métodos abstratos, inclusive é utilizado nessa nova sintaxe para métodos de classe abstratos. O abstractstaticmethod também está obsoleto e deve ser substituído tal qual o abstractclassmethod por

@staticmethod
@abstractmethod
def método_abstrato():
    pass