Olá, Segue abaixo o meu código:
class Data:
def __init__(self, dia, mes, ano):
self.dia = dia
self.mes = mes
self.ano = ano
def formatada(self):
print('{0:02d}/{1:02d}/{2:04d}'.format(self.dia, self.mes, self.ano))O meu problema é que se o usuario digitar zero no começo do número como nesse exemplo d = Data(10, 01, 1980), da o seguinte erro: SyntaxError: leading zeros in decimal integer literals are not permitted; use an 0o prefix for octal integers. Vi em alguns artigos para digitar como string colocando aspas simples ou duplas com nesse exemplo d = Data(10, '01', 1980), mas quando vai ser executado a função d.formatada() da esse erro: ValueError: Unknown format code 'd' for object of type 'str', e mesmo de eu modificar o código dirando o 'd' print('{0:02}/{1:02}/{2:04}'.format(self.dia, self.mes, self.ano)) da esse outro erro: ValueError: '=' alignment not allowed in string format specifier.
Gostaria que o usuario digitasse d = Data(10, 01, 1980) e o python aceitasse.