Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Explicação, por favor

Pode ser o cansaço, mas para mim não ficou claro o que quis dizer na parte em negrito.

São métodos decorados com @classmethod. Quando criamos um método de classe, temos acesso aos atributos da classe.

Da mesma forma com os atributos de classe, podemos acessar estes métodos de dentro dos métodos de instância, a partir de ( _class _) se desejarmos:

Depois de importar, como executo para imprimir o ireturn? Aqui só gera erro.

class Funcionario: prefixo = 'Instrutor'

@classmethod
def info(cls):
    return f'Esse é um {cls.prefixo}'
1 resposta
solução!

Olá Bruno, boa noite!

Para imprimir, você chama um método da classe (anotado com @classmethod) pela classe e não pelo objeto, assim:

print(Funcionario.info())

Para imprimir por um objeto (instância), você deve obter a classe primeiro através do atributo __class__ para depois chamar o método info(), assim:

f = Funcionario()
print(f.__class__.info())

Espero ter ajudado e bons estudos!