Новая Школа - онлайн-школа подготовки к ЕГЭ
Задача Задача №1342460
А
Аноним
30 августа 2024 13:44 · публичный вопрос
А
Аноним

Снова делаем телефонную книгу. 📱 В этот раз тебе нужно добавить возможность удаления контактов. И немного привести код в порядок. Формат ввода: Вводится действие — что делать:…

Запрос пользователя

Снова делаем телефонную книгу. 📱 В этот раз тебе нужно добавить возможность удаления контактов. И немного привести код в порядок. Формат ввода: Вводится действие — что делать: вывести, добавить, изменить или удалить контакт. Далее, в зависимости от выбранного действия, должен произойти соответствующий ввод: если вывод контакта — то вводится только имя. Если добавление — то вводить и имя, и телефон. Если изменение — аналогично предыдущему шагу. Если удаление — то вводится только имя. Действия должны выбираться вводом соответствующих номеров: 1 — показать, 2 — добавить, 3 — изменить, 4 — удалить. Формат вывода: Выводится изменённый словарь, если были выбраны действия добавления, изменения или удаления. При действии демонстрации выводится только запрашиваемый контакт. При этом сохраняются требования: если такого контакта нет, то вывести: «Нет в телефонной книге». То же и с удалением. Примечание Зачёт можно получить только после успешного прогона всех тестов. Для этого нажми на кнопку «Отправить код на проверку». Код 1 book_phones = { 2 'Квам-Дамн': '-79899899889', 3 'Лук Скамворкер': '112', 4 'Петард Вейпер': '1', 5 'Лия Моргала': '+09998765432', 6 'Эдуард Скамворкер': '0' 7 } 8 # Напиши код тут 9 ​ 10 # Этот код используй для вывода обновлённой телефонной книги в формате "{имя}: {телефон}". 11 for key in book_phones: 12 print(f'{key}: {book_phones[key]}')

Ответ нейросети
30 августа 2024 13:44

Давайте создадим телефонную книгу с функциональностью добавления, изменения, удаления и вывода контактов. Мы будем использовать словарь для хранения контактов, где ключом будет имя, а значением — номер телефона. Ниже представлен пример кода, который соответствует вашим требованиям:

book_phones = {
    'Квам-Дамн': '-79899899889',
    'Лук Скамворкер': '112',
    'Петард Вейпер': '1',
    'Лия Моргала': '+09998765432',
    'Эдуард Скамворкер': '0'
}

def show_contact(name):
    if name in book_phones:
        print(f'{name}: {book_phones[name]}')
    else:
        print('Нет в телефонной книге.')

def add_contact(name, phone):
    book_phones[name] = phone
    print(f'Контакт {name} добавлен.')

def change_contact(name, new_phone):
    if name in book_phones:
        book_phones[name] = new_phone
        print(f'Контакт {name} изменён.')
    else:
        print('Нет в телефонной книге.')

def delete_contact(name):
    if name in book_phones:
        del book_phones[name]
        print(f'Контакт {name} удалён.')
    else:
        print('Нет в телефонной книге.')

while True:
    action = int(input("Выберите действие: 1 — показать, 2 — добавить, 3 — изменить, 4 — удалить, 5 — выйти: "))
    
    if action == 1:
        name_to_show = input("Введите имя для показа: ")
        show_contact(name_to_show)
    elif action == 2:
        name_to_add = input("Введите имя для добавления: ")
        phone_to_add = input("Введите номер телефона: ")
        add_contact(name_to_add, phone_to_add)
    elif action == 3:
        name_to_change = input("Введите имя для изменения: ")
        new_phone = input("Введите новый номер телефона: ")
        change_contact(name_to_change, new_phone)
    elif action == 4:
        name_to_delete = input("Введите имя для удаления: ")
        delete_contact(name_to_delete)
    elif action == 5:
        break
    else:
        print("Некорректный ввод. Попробуйте снова.")
    
    # Выводим обновлённую телефонную книгу
    print("Телефонная книга:")
    for key in book_phones:
        print(f'{key}: {book_phones[key]}')

Объяснение кода:

  1. Словарь book_phones: Здесь мы сохраняем все контакты. Имя — это ключ, а телефон — значение.
  2. Функции:
    • show_contact(name): Проверяет наличие контакта и выводит его информацию.
    • add_contact(name, phone): Добавляет новый контакт в словарь.
    • change_contact(name, new_phone): Изменяет номер телефона для существующего контакта.
    • delete_contact(name): Удаляет контакт из телефонной книги, если он существует.
  3. Цикл while True: Позволяет пользователю вводить действия, пока он не решит выйти (нажав 5).
  4. Вывод обновлённой телефонной книги: После каждого действия показывается актуальный список контактов.

Таким образом, код реализует все необходимые функции для телефонной книги, и вы можете его тестировать, чтобы убедиться в корректности работы. Удачи!