4
respostas

Nao consegui utilizar o procurar

-- coding: UTF-8 --

def cadastrar(nomes): print 'Digite: o nome:' nome = raw_input() nomes.append(nome)

def listar(nomes): print 'Listando nomes:' for nome in nomes: print nome

def remover(nomes): print 'Digite o nome que deseja remover' nome_remover = raw_input() removido = 0 for nome in nomes: if(nome == nome_remover): nomes.remove(nome) print 'O nome %s foi removido com Sucesso!' % (nome) removido = 1

def alterar(nomes): print("Qual nome deseja alterar") nome_a_alterar = raw_input()

if(nome_a_alterar in nomes):
     posicao = nomes.index(nome_a_alterar)
     print("Digite o novo nome:")
     nome_novo = raw_input()
     nomes[posicao] = nome_novo

def procurar(nomes): print("Qual nome você gostaria de procurar?") nome_a_procurar = raw_input() procurar(nome_procurado, nomes) if(nome_a_procurar in nomes): print("O nome %s conta na lista' % (nome_a_procurar") else: print("O nome %s nao está na nossa lista' % (nome_a_procurar)")

def menu(): nomes = [] escolha = ''

while(escolha != '0'):    
    print 'Digite: 1 para cadastrar, 2 para listar, 3 para remover, 4 para alterar, 5 para procurar, 0 para terminar'
    escolha = raw_input()

    if(escolha == '1'):
        cadastrar(nomes)

    if(escolha == '2'):
        listar(nomes)   

    if(escolha == '3'):
        remover(nomes)

    if(escolha == '4'):
        alterar(nomes)

     if(escolha == '5'):
        procurar(nomes)

menu()

4 respostas

Olá Luiza,

deve ser seu if que parece estar com problemas.

Tente corrigi-lo assim:

    if(nome_a_procurar in nomes): 
        print("O nome %s conta na lista" % nome_a_procurar) 
    else: 
        print("O nome %s nao está na nossa lista" % nome_a_procurar)

Oi Luciano, continua sem funcionar. O código # -- coding: UTF-8 -- tbm não está funcionando

Digite: 1 para cadastrar, 2 para listar, 3 para remover, 4 para alterar, 5 para procurar, 0 para terminar 5 Qual nome você gostaria de procurar? maria Traceback (most recent call last): File "", line 1, in File "testando_app.py", line 65, in menu() File "testando_app.py", line 64, in menu procurar(nomes) File "testando_app.py", line 36, in procurar if(nome_a_procurar in nomes): NameError: global name 'nome_a_procurar' is not defined

Ola Luisa,

o código está com alguns problemas de indentação. E em Python, a indentação importa para o escopo e definição de blocos.

Estou postando o código formatado com algumas correções que vi. Mas compare com o seu para identificação os pontos de melhoria =)

#-*- coding: utf-8 -*-

def cadastrar(nomes):
    print 'Digite: o nome:'
    nome = raw_input()
    nomes.append(nome)


def listar(nomes):
    print 'Listando nomes:'
    for nome in nomes:
        print nome


def remover(nomes):
    print 'Digite o nome que deseja remover'
    nome_remover = raw_input()
    removido = 0
    for nome in nomes:
        if(nome == nome_remover):
            nomes.remove(nome)
            print 'O nome %s foi removido com Sucesso!' % (nome)
            removido = 1


def alterar(nomes): 
    print("Qual nome deseja alterar") 
    nome_a_alterar = raw_input()

    if(nome_a_alterar in nomes):
         posicao = nomes.index(nome_a_alterar)
         print("Digite o novo nome:")
         nome_novo = raw_input()
         nomes[posicao] = nome_novo


def procurar(nomes): 
    print("Qual nome você gostaria de procurar?") 
    nome_a_procurar = raw_input() 
    procurar(nome_procurado, nomes) 
    if(nome_a_procurar in nomes): 
        print("O nome %s conta na lista" % nome_a_procurar) 
    else: 
        print("O nome %s nao está na nossa lista' % (nome_a_procurar)")


def menu(): 
    nomes = [] 
    escolha = ''

    while(escolha != '0'):
        print 'Digite: 1 para cadastrar, 2 para listar, 3 para remover, 4 para alterar, 5 para procurar, 0 para terminar'
        escolha = raw_input()

        if(escolha == '1'):
            cadastrar(nomes)

        if(escolha == '2'):
            listar(nomes)

        if(escolha == '3'):
            remover(nomes)

        if(escolha == '4'):
            alterar(nomes)

        if(escolha == '5'):
            procurar(nomes)

menu()