Modificare un contatto
Fa parte della sezione Logica e flusso del percorso Python di Coddy. Lezione 20 di 78.
Sfida
FacileIl passaggio successivo consiste nel creare la funzione edit_contact. Questa funzione consentirà agli utenti di aggiornare i dettagli di un contatto esistente nella rubrica.
Il tuo compito:
- Crea una funzione chiamata
edit_contactche accetti un argomento:contact_book(un dizionario). - Leggi il nome del contatto che l’utente desidera modificare.
- Verifica se il nome esiste in
contact_book:- Se esiste, chiedi all’utente di inserire i nuovi valori per il telefono, l’email e l’indirizzo del contatto (in quest’ordine!).
- Se l’utente non inserisce nulla (preme Invio), mantieni il valore corrente per quel campo (in questo caso l’input sarà una stringa vuota,
''). - Aggiorna le informazioni del contatto nel dizionario.
- Stampa:
"Contact updated successfully!".
- Se il contatto non esiste, stampa:
"Contact not found!".
Ricorda: leggi gli input per il telefono, l’email e l’indirizzo solo se il contatto esiste nella rubrica. Se il contatto non viene trovato, stampa subito il messaggio di errore senza provare a leggere altri input.
Comportamento previsto:
Per un contact_book contenente:
{"Alice": {"phone": "123-456-7890", "email": "alice@example.com", "address": "123 Main St"}}Se l’utente inserisce:
Alice
987-654-3210
456 Elm StIl contact_book aggiornato dovrebbe apparire così:
{"Alice": {"phone": "987-654-3210", "email": "alice@example.com", "address": "456 Elm St"}}Se l’utente inserisce un nome che non esiste:
BobL’output dovrebbe essere:
Contact not found!Provalo tu
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!")Tutte le lezioni di Logica e flusso
1Esplorazione delle variabili
CostantiAssegnazioni multiple di variabiliScambio di variabiliVariabili segnapostoArrotondare i numeriConversione di liste4Applicazione Rubrica
Visualizzare il menuAggiungere un contatto7Insiemi Parte 2
Operazioni matematiche Parte 1Operazioni matematiche Parte 2Riepilogo - Caccia al tesoroSottoinsiemi e sovrainsiemiIterare sugli insiemiRiepilogo - Tracciamento del torneo10Comprensioni di liste di base
La sintassiCreare liste sempliciAggiungere condizioniUsare l'aggregazione dei datiRipasso - La casa delle listeRipasso - Elementi di libertà13Sistema di gestione dell'inventario
Panoramica del progettoAggiungi articolo2Dizionari Parte 1
Che cos'è un dizionario?Creare un dizionarioAccedere ai valoriModificare i dizionariRipasso - Gestore di ricette5Decisioni avanzate
Operatore ternarioVerifiche di appartenenzaVerifiche di identitàErrori di indentazioneRiepilogo - Filtro vacanze8Gestore delle carriere degli studenti
Panoramica del progettoAggiungi studente11Funzioni avanzate
Restituire più valoriFunzioni lambda - Parte 1Funzioni lambda - Parte 2Sfida di ripasso - Ordinamento con lambdaFunzioni ricorsive - Parte 1Funzioni ricorsive - Parte 2Ripasso - Somma di una lista annidata14Funzioni di ordine superiore
La funzione mapLa funzione filterRipasso - Validatore di emailRipasso - Elaboratore di numeri3Dizionari Parte 2
Metodi dei dizionariDizionari annidatiVerificare la presenza di chiaviIterare sui dizionariRipasso - Contatore di frequenza6Insiemi Parte 1
Che cos'è un insieme?Operazioni di baseMetodi degli insiemiRiepilogo - Rimuovere i duplicati9Aggregazione avanzata dei dati
Usare la sommaTrovare il minimo e il massimoOrdinare i dati in modo efficienteRipasso - Ordinatore di dizionari12Gestione di base degli errori
Che cos'è la gestione degli errori?Il blocco try ed exceptGestire più eccezioniRiepilogo - Errori nel carrelloEsercitati da solo: Compilatore Python online