Editar Contato
Parte da seção Logic & Flow do Journey de Python da Coddy — lição 20 de 78.
Desafio
FácilO próximo passo é criar a função edit_contact. Esta função permitirá que os usuários atualizem os detalhes de um contato existente na Agenda de Contatos.
Sua Tarefa:
- Crie uma função chamada
edit_contactque recebe um argumento:contact_book(um dicionário). - Solicite a entrada para o nome do contato que o usuário deseja editar.
- Verifique se o nome existe no
contact_book:- Se existir, solicite ao usuário que insira novos valores para o telefone, e-mail e endereço do contato (nessa ordem!).
- Se o usuário não fornecer nenhuma entrada (pressionar Enter), mantenha o valor atual para esse campo (neste caso, a entrada será uma string vazia,
''). - Atualize as informações do contato no dicionário.
- Imprima:
"Contact updated successfully!".
- Se o contato não existir, imprima:
"Contact not found!".
Lembre-se: Leia as entradas para telefone, e-mail e endereço apenas se o contato existir na agenda de contatos. Se o contato não for encontrado, imprima a mensagem de erro imediatamente sem tentar ler entradas adicionais.
Comportamento Esperado:
Para um contact_book contendo:
{"Alice": {"phone": "123-456-7890", "email": "alice@example.com", "address": "123 Main St"}}Se o usuário inserir:
Alice
987-654-3210
456 Elm StO contact_book atualizado deve ficar assim:
{"Alice": {"phone": "987-654-3210", "email": "alice@example.com", "address": "456 Elm St"}}Se o usuário inserir um nome que não existe:
BobA saída deve ser:
Contact not found!Experimente você mesmo
def display_menu():
print("Contact Book Menu:")
print("1. Add Contact")
print("2. View Contact")
print("3. Edit Contact")
print("4. Delete Contact")
print("5. List All Contacts")
print("6. Exit")
def add_contact(contact_book):
name = input()
if name in contact_book:
print("Contact already exists!")
return
phone = input()
email = input()
address = input()
contact_book[name] = {"phone": phone, "email": email, "address": address}
print("Contact added successfully!")
def view_contact(contact_book):
name = input()
if name in contact_book:
contact = contact_book[name]
print(f"Name: {name}")
print(f"Phone: {contact['phone']}")
print(f"Email: {contact['email']}")
print(f"Address: {contact['address']}")
else:
print("Contact not found!")Todas as lições de Logic & Flow
1Exploração de Variáveis
ConstantesAtribuição de Múltiplas VariáveisTroca de VariáveisVariáveis de Espaço ReservadoArredondar NúmerosCasting de Listas4Aplicativo de Agenda de Contatos
Exibir MenuAdicionar Contato7Conjuntos Parte 2
Operações Matemáticas Parte 1Operações Matemáticas Parte 2Revisão - Caça ao TesouroSubconjuntos e SuperconjuntosIterando sobre ConjuntosRevisão - Rastreador de Torneio10List Comprehensions Básicas
A SintaxeCriando Listas SimplesAdicionando CondiçõesUsando Agregação de DadosRecapitulação - House Of ListsRecapitulação - Elements Of Freedom13Sistema de Gerenciamento de Inventário
Visão Geral do ProjetoAdicionar Item2Dicionários Parte 1
O que é um Dicionário?Criando um DicionárioAcessando ValoresModificando DicionáriosRecapitulação - Gerenciador de Receitas5Tomada de Decisão Avançada
Operador TernárioVerificações de PertencimentoVerificações de IdentidadeErros de IndentaçãoRecapitulação - Filtro de Férias8Gerenciador de Registros de Alunos
Visão Geral do ProjetoAdicionar Aluno11Funções Avançadas
Retornando Múltiplos ValoresFunções Lambda Parte 1Funções Lambda Parte 2Desafio de Recapitulação - Lambda SortFunções Recursivas Parte 1Funções Recursivas Parte 2Recapitulação - Somar Listas Aninhadas14Funções de Ordem Superior
A Função MapA Função FilterRecapitulação - Validador de E-mailRecapitulação - Processador de Números3Dicionários Parte 2
Métodos de DicionárioDicionários AninhadosVerificando ChavesIterando em DicionáriosRecapitulação - Contador de Frequência6Conjuntos Parte 1
O que é um Conjunto?Operações BásicasMétodos de ConjuntosRecapitulação - Remover Duplicatas9Agregação de Dados Avançada
Usando SumEncontrando Mínimo e MáximoOrdenando Dados de Forma EficienteRecapitulação - Dictionary Sorter