3
respostas

Valor aceito p/ atributo Conta.numero

Olá, tudo bem?

Eu tentei inputar no número da conta "007", porém o console retorna um erro:

    conta_juju = Account(007,"juju", 13,14)
                            ^
SyntaxError: invalid token

Porque o Python não converte minimamente este valor p/ 7 ?

3 respostas

Boa noite, tudo joia?

O Python utiliza o 0 como prefixo para números binários, octogonais e hexadecimais, logo quando você faz o 007, ele tenta converter pra um desses tipos e não consegue.

Number SystemPrefix
Binary'0b' or '0B'
Octal'0o' or '0O'
Hexadecimal0x' or '0X'

Você pode executar uns exemplos de onde eu encontrei essa tabela acima: https://www.programiz.com/python-programming/numbers

Bons estudos.

Elias, há alguma abordagem para contornar esta particularidade? Ou esse tipo de aplicação é incomum?

Obrigado

Opa, bom dia. Esse tipo de aplicação é incomum. Esse valor, vai ser inserido pelo usuário? Se for o usuário que inserir o input, vocÊ pode ler como string e fazer casting(conversão) para int. Olha esse exemplo:

s = '007'
i = int(s)
print(i) # Vai printar 7

Espero que tenha sanado a dúvida. Abraço!