# -*- coding: UTF-8 -*-
import re
def cadastrar(nomes):
print 'Digite o nome a ser listado:'
nome = raw_input()
nomes.append(nome)
def listar(nomes):
print 'Listando nomes:'
for nome in nomes:
print nome
def remover(nomes):
print 'Qual nome gostaria de remover?'
nome = raw_input()
nomes.remove(nome)
def alterar(nomes):
print 'Qual nome vc gostaria de alterar?'
nome_a_alterar = raw_input()
if(nome_a_alterar in nomes):
posicao = nomes.index(nome_a_alterar)
print 'Digite novo nome:'
nome_novo = raw_input()
nomes[posicao] = nome_novo
def procurar(nomes):
print 'Digite nome a procurar:'
nome_a_procurar = raw_input()
if(nome_a_procurar in nomes):
print 'O nome "%s" está cadastrado na lista.' % (nome_a_procurar)
else:
print 'O nome "%s" não está cadastrado na lista.' % (nome_a_procurar)
def procurar_regex(nomes):
print('Digite a expressão regular')
regex = raw_input()
nomes_concatenados = ''.join(nomes)
resultados = re.findall(regex, nomes_concatenados)
print(resultados)
def menu():
nomes = []
escolha = ''
while(escolha != '0'):
print 'Digite: 1 para cadastrar, 2 para listar, 3 para remover, 4 para modificar, 5 para procurar, 6 para expressão regular ou 0 para cancelar:'
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)
if(escolha == '6'):
procurar_regex(nomes)
if(escolha == '0'):
print 'Volte sempre!'
exit()
menu()
Acontece isso:
Digite: 1 para cadastrar, 2 para listar, 3 para remover, 4 para modificar, 5 para procurar, 6 para expressão regular ou 0 para cancelar:
2
Listando nomes:
joao
jose
joaquim
maria
Digite: 1 para cadastrar, 2 para listar, 3 para remover, 4 para modificar, 5 para procurar, 6 para expressão regular ou 0 para cancelar:
6
Digite a expressão regular
jo
['jo', 'jo', 'jo']
Não deveria aparecer os três nomes seguidos? Não tô conseguindo sozinho entender o motivo, nem lendo as outras perguntas... O que exatamente eu tenho que fazer para funcionar?