Olá André, tudo bem? Espero que sim!
Sobre o uso de f'strings em vez de .format(), você está absolutamente correto. As f-strings são uma maneira mais recente e muitas vezes mais conveniente de formatar strings em Python. Elas foram introduzidas no Python 3.6 e são uma excelente alternativa ao método .format().
No entanto, notei um pequeno erro de sintaxe no seu código. Na função formatada
, você esqueceu de fechar a chave antes de especificar o separador. O código correto seria:
def formatada(self):
print(f'{self.dia}/{self.mes}/{self.ano}')
Note que o separador '/' é diretamente colocado entre as chaves das variáveis, sem a necessidade de usar o parâmetro sep
.
Quanto à função cabecalho
, está correta e é uma adição interessante ao código!
Então, o código final ficaria assim:
class Data:
def __init__(self, dia, mes, ano):
self.dia = dia
self.mes = mes
self.ano = ano
def formatada(self):
print(f'{self.dia}/{self.mes}/{self.ano}')
def cabecalho(self):
print(f'Aos {self.dia} dias, do mês {self.mes}, do ano de {self.ano}')
d = Data(21,11,2007)
d.formatada()
d.cabecalho()
Espero ter ajudado!
Caso tenha dúvidas, fico à disposição.
Abraços e bons estudos!