PYTHON FUNCTION(METHOD)

Asked

Viewed 646 times

-1

Well I am trying to create a register program in python, but a simple one only to test what I have learned, but I have a problem, I created a function and I return and then store in a variable but it runs the function without wanting, someone to help me? the problem occurs on line 49

# Codigo do usuario
c = 0

def menu():
    print("----------------------------------------")
    print("----------Sistema de Cadastro-----------")
    print("----------------------------------------")
    print("(1) buscar")
    print("(2) Cadastrar")
    print("(3) Excluir Cadastrado")
    print("(4) Sair")
    print("----------------------------------------")
    opcao = int(input("Digite o número: "))
    return opcao

def cadastro(c):
    # Coletando dados
    Nome = input("Digite o nome completo: ")
    Data_nasc = input("Digite a data de Nascimento: ")
    Natu = input("Digite a naturalidade: ")
    RG = input("Digite o RG: ")
    CPF = input("Digite o CPF: ")
    Cod = print("Codigo gerado:", c)
    print(50*'-')
    print("Cadastrado com Sucesso.")
    print(50*'-')

    # Configurando o Amarzenamento
    nome = []
    dataNasc = []
    natu = []
    rg = []
    cpf = []
    cod = []
    # codigo >>
    c += 1
    # Armazenando os dados
    nome.append(cadastro(Nome))
    dataNasc.append(Data_nasc)
    natu.append(Natu)
    rg.append(RG)
    cpf.append(CPF)
    cod.append(Cod)

    # Retornando Dados
    return nome, dataNasc, natu, rg, cpf, cod

# Armazenando dados na variavel
nome, dataNasc, natu, rg,cpf, cod = cadastro(c)

def busca():
    # Aprensentando com Sucesso
    print(50*'-')
    print('Cadastro encontrado.')
    print(50*'-')
    print("Nome:",nome[0])
    print("Data de Nascimento:", dataNasc[0])
    print("Naturalidade:", natu[0])
    print("RG:", rg[0])
    print("CPF:", cpf[0])
    print(50*'-')

opcao = menu()
if opcao == 4:
    pass
elif opcao == 2:
    cadastro(c)
elif opcao == 1:
    busca()

Thank you for your attention.

  • Which function it performs without you wanting?

  • The Register function

3 answers

1

The Error is here:

nome.append(cadastro(Nome))

You call registration again, remove cadastro

nome.append(Nome)
  • The error still persists, I believe it is on line 49 (name, dataNasc, Natu, rg,Cpf, Cod = register(c)) when removing this line it works normal.

  • @THW3SLEY Here worked normal

  • The problem is when I pass the value of the function, it calls her again, and I don’t want that.

-1

It should work like this:

# Codigo do usuario
c = 0

def menu():
    print("----------------------------------------")
    print("----------Sistema de Cadastro-----------")
    print("----------------------------------------")
    print("(1) buscar")
    print("(2) Cadastrar")
    print("(3) Excluir Cadastrado")
    print("(4) Sair")
    print("----------------------------------------")
    opcao = int(input("Digite o número: "))
    return opcao

def cadastro(c):
    # Coletando dados
    Nome = input("Digite o nome completo: ")
    Data_nasc = input("Digite a data de Nascimento: ")
    Natu = input("Digite a naturalidade: ")
    RG = input("Digite o RG: ")
    CPF = input("Digite o CPF: ")
    Cod = print("Codigo gerado:", c)
    print(50*'-')
    print("Cadastrado com Sucesso.")
    print(50*'-')

# Configurando o Amarzenamento
nome = []
dataNasc = []
natu = []
rg = []
cpf = []
cod = []
# codigo >>
c += 1
# Armazenando os dados
nome.append(Nome)
dataNasc.append(Data_nasc)
natu.append(Natu)
rg.append(RG)
cpf.append(CPF)
cod.append(Cod)

# Retornando Dados
return nome, dataNasc, natu, rg, cpf, cod

# Armazenando dados na variavel
nome, dataNasc, natu, rg,cpf, cod = cadastro(c)

def busca():
    # Aprensentando com Sucesso
    print(50*'-')
    print('Cadastro encontrado.')
    print(50*'-')
    print("Nome:",nome[0])
    print("Data de Nascimento:", dataNasc[0])
    print("Naturalidade:", natu[0])
    print("RG:", rg[0])
    print("CPF:", cpf[0])
    print(50*'-')

opcao = menu()
if opcao == 4:
    pass
elif opcao == 2:
    cadastro(c)
elif opcao == 1:
    busca()

-2

# Código do usuário
c = 0
def menu ():
 print("----------------------------------------")
 print("----------Sistema de Cadastro-----------")
 print("----------------------------------------")
 print("(1) buscar")
 print("(2) Cadastrar")
 print("(3) Excluir Cadastrado")
 print("(4) Sair")
 print("----------------------------------------")
 opcao = int(input("Digite o número: "))
 return opção

 opcao = menu()
  • 1

    What’s to be that code?

Browser other questions tagged

You are not signed in. Login or sign up in order to post.