1
I made the code below, in order to receive and display data, as if they were related to a tax bill. The code displays the following error when running:
File "main.py", line 49, in <module>
imprimir_nota()
File "main.py", line 41, in imprimir_nota
print ('\nCliente: {}'. format (Nome))
NameError: name 'Nome' is not defined
If I’m right and there’s no big mistake in my logic regarding the code, the problem is the absence of a return of values from the first two functions to the third. I tried to make the correction when I imagined it, but I couldn’t, very likely due to my lack of understanding on how to perform right.
def dados_cliente():
Nome = str (input ('Por gentileza, informe o nome do cliente: '))
CPF = int (input ('Por gentileza, informe o CPF do cliente: '))
Celular = int (input ('Por gentileza, informe o celular: '))
def dados_peça():
peca1 = 823556
peca2 = 632552
peca3 = 445568
peca4 = 550632
peca5 = 785642
Numero_Peca = str (input ('\n\nPor gentileza, informe o número da peça: '))
if Numero_Peca == peca1:
Descricao_Peca = str ('Peça de motor para motocicleta Yamanha.')
Preco = 100.0
elif Numero_Peca == peca2:
Descricao_Peca = str ('Peça de motor para carro Honda.')
Preco = 170.0
elif Numero_Peca == peca3:
Descricao_Peca = str ('Peça de rolamento Yamaha.')
Preco = 257.99
elif Numero_Peca == peca4:
Descricao_Peca = str ('Peça de aceleração Dafra.')
Preco = 55.80
elif Numero_Peca == peca5:
Descricao_Peca = str ('Peça de frenagem Honda.')
Preco = 145.98
Qtd_Peca = int (input ('Por gentileza, informe a quantidade desejada: '))
def imprimir_nota():
print ('\n\n..::NOTA FISCAL::..')
print ('LOJA DE PEÇAS EM GERAL')
print ('CNPJ: 40.769.710/0001-03')
print ('\nCliente: {}'. format (Nome))
print ('CPF: {}'. format (CPF))
print ('Telefone Celular: {}'. format (Celular))
print ('Quantidade do produto: {} Código do produto: {} Descrição do produto: {} Preço unitário: {}'. format (Qtd_Peca, Numero_Peca, Descricao_Peca, Preco))
dados_cliente()
dados_peça()
imprimir_nota()
Search by "parameters" of functions.
– anonimo