Menu
Coddy logo textTech

Edytuj kontakt

Część sekcji Logika i przepływ programu ścieżki Python w Coddy. Lekcja 20 z 78.

challenge icon

Wyzwanie

Łatwy

Następnym krokiem jest utworzenie funkcji edit_contact. Ta funkcja umożliwi użytkownikom aktualizowanie danych istniejącego kontaktu w książce kontaktów.


Twoje zadanie:

  1. Utwórz funkcję o nazwie edit_contact, która przyjmuje jeden argument: contact_book (słownik).
  2. Pobierz nazwę kontaktu, który użytkownik chce edytować.
  3. Sprawdź, czy nazwa istnieje w contact_book:
    • Jeśli istnieje, poproś użytkownika o podanie nowych wartości telefonu, adresu e-mail i adresu kontaktu (w tej kolejności!).
    • Jeśli użytkownik nic nie wpisze (naciśnie Enter), zachowaj obecną wartość tego pola (w takim przypadku wejściem będzie pusty ciąg znaków, '').
    • Zaktualizuj informacje o kontakcie w słowniku.
    • Wyświetl: "Contact updated successfully!".
  4. Jeśli kontakt nie istnieje, wyświetl: "Contact not found!".

Pamiętaj: Pobieraj dane wejściowe dotyczące telefonu, adresu e-mail i adresu tylko wtedy, gdy kontakt istnieje w książce kontaktów. Jeśli kontaktu nie znaleziono, natychmiast wyświetl komunikat o błędzie, nie próbując pobierać kolejnych danych.


Oczekiwane działanie:

Dla obiektu contact_book zawierającego:

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

Jeśli użytkownik wpisze:

Alice
987-654-3210

456 Elm St

Zaktualizowany obiekt contact_book powinien wyglądać tak:

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

Jeśli użytkownik wpisze nazwę, która nie istnieje:

Bob

Wynik powinien być następujący:

Contact not found!

Spróbuj swoich sił

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

Wszystkie lekcje w sekcji Logika i przepływ programu

Poćwicz samodzielnie: Kompilator Python online