Menu
CoddyTech

Modifier un contact

Fait partie de la section Logique et flux du Journey Python de Coddy. Leçon 20 sur 78.

challenge icon

Défi

Facile

L’étape suivante consiste à créer la fonction edit_contact. Cette fonction permettra aux utilisateurs de mettre à jour les informations d’un contact existant dans le carnet de contacts.


Votre tâche :

  1. Crée une fonction nommée edit_contact qui prend un argument : contact_book (un dictionnaire).
  2. Demande le nom du contact que l’utilisateur souhaite modifier.
  3. Vérifie si le nom existe dans contact_book :
    • S’il existe, demande à l’utilisateur de saisir de nouvelles valeurs pour le téléphone, l’adresse e-mail et l’adresse du contact (dans cet ordre !).
    • Si l’utilisateur ne saisit rien (il appuie sur Entrée), conserve la valeur actuelle pour ce champ (dans ce cas, la saisie sera une chaîne vide, '').
    • Mets à jour les informations du contact dans le dictionnaire.
    • Affiche : "Contact updated successfully!".
  4. Si le contact n’existe pas, affiche : "Contact not found!".

N’oublie pas : lis les saisies du téléphone, de l’adresse e-mail et de l’adresse uniquement si le contact existe dans le carnet de contacts. Si le contact est introuvable, affiche immédiatement le message d’erreur sans essayer de lire d’autres saisies.


Comportement attendu :

Pour un contact_book contenant :

{"Alice": {"phone": "123-456-7890", "email": "alice@example.com", "address": "123 Main St"}}

Si l’utilisateur saisit :

Alice
987-654-3210

456 Elm St

Le contact_book mis à jour devrait ressembler à ceci :

{"Alice": {"phone": "987-654-3210", "email": "alice@example.com", "address": "456 Elm St"}}

Si l’utilisateur saisit un nom qui n’existe pas :

Bob

La sortie devrait être :

Contact not found!

Essayez vous-même

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!")

Toutes les leçons de Logique et flux

Entraînez-vous par vous-même : Compilateur Python en ligne