Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Задача со словарями для начинающего.

Kirill Tihkov Ученик (79), открыт 1 день назад
Возвратись к задаче с телефонной книгой.

Пора добавлять новый функционал!

Реализуй добавление новых контактов и изменение текущих в своей телефонной книге.



Логика:

Добавляется контакт только в том случае, если указаны и телефон, и имя, и такого контакта ещё нет. А если такой контакт есть, то изменяем его.

Если такого контакта нет и не был введён номер телефона, то выводится сообщение: «Нет в телефонной книге».

Выводится номер телефона текущего контакта, если такое имя есть, но не ввели номер телефона.



Формат ввода:

Сначала вводится имя, потом номер телефона.



Формат вывода:

Последовательно выводится обновлённая телефонная книга в формате "{имя}: {телефон}", ❗если телефонная книга изменялась.



Примечание


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

9
# Напиши код тут
10

11
# Этот код используй для вывода обновлённой телефонной книги в формате "{имя}: {телефон}".
12
for key in book_phones:
13
print(f'{key}: {book_phones[key]}')
1 ответ
Lll Lll Профи (659) 1 день назад
Вот
Lll LllПрофи (659) 1 день назад
Вот решение задачи с подробными комментариями:
 
book_phones = {
'Квам-Дамн': '-79899899889',
'Лук Скамворкер': '112',
'Петард Вейпер': '1',
'Лия Моргала': '+09998765432',
'Эдуард Скамворкер': '0'
}

# Получаем данные от пользователя
name = input("Введите имя: ")
phone = input("Введите номер телефона: ")

# Проверяем, существует ли контакт
if name in book_phones:
# Если контакт существует и введен номер - обновляем
if phone:
book_phones[name] = phone
print(f"Контакт {name} обновлен")
else:
# Если контакт существует, но номер не введен - выводим текущий
print(f"Номер телефона для {name}: {book_phones[name]}")
else:
# Если контакта нет
if phone:

print("Нет в телефонной книге
Lll LllПрофи (659) 1 день назад
if phone:
# Добавляем новый контакт, если есть и имя, и номер
book_phones[name] = phone
print(f"Контакт {name} добавлен")
else:
# Выводим сообщение, если контакта нет и номер не введен
print("Нет в телефонной книге")

# Выводим обновленную телефонную книгу
for key in book_phones:
print(f'{key}: {book_phones[key]}')
 
Программа работает следующим образом:
1. Сначала запрашивает имя и номер телефона
2. Проверяет, есть ли такой контакт в телефонной книге
3. Если контакт есть:* При наличии номера - обновляет запись
* При отсутствии номера - показывает текущий номер
4. Если контакта нет:* При наличии обоих параметров - добавляет новый контакт
* При отсутствии номера - выводит сообщение об отсутствии контактов
Lll LllПрофи (659) 1 день назад
5. конце выводит всю обновленную телефонную книгу
Программа учитывает все условия задачи и корректно обрабатывает различные сценарии ввода данных.
Похожие вопросы