Словари в Python — это изменяемые коллекции пар «ключ-значение». В этом уроке мы разберём, как добавлять новые элементы в уже существующий словарь и как изменять значения по уже имеющимся ключам. Ты научишься пользоваться квадратными скобками [], методом update(), поймёшь, что происходит при попытке добавить элемент с уже существующим ключом, и увидишь, как аккуратно добавлять элементы только при их отсутствии с помощью методов get() и setdefault(). Задания идут от самых простых до чуть более хитрых ситуаций, которые часто встречаются в реальном коде.
- Модуль 1: Основы синтаксиса Python
- Модуль 2: Переменные и типы данных
- Модуль 3: Операторы
- Арифметические операторы (+, -, *, /).
- Целочисленное деление и остаток (// и %).
- Возведение в степень (**).
- Операторы сравнения.
- Логические операторы (and, or, not).
- Операторы присваивания (=, +=, -=).
- Операторы принадлежности (in, not in).
- Операторы идентичности (is, is not).
- Битовые операторы.
- Тернарный оператор.
- Модуль 4: Ввод и вывод данных
- Модуль 5: Условные конструкции
- Модуль 6: Циклы
- Модуль 7: Строки
- Модуль 8: Списки
- Модуль 9: Кортежи
- Модуль 10: Словари
- Создание словарей.
- Доступ к элементам словаря.
- Добавление и изменение элементов.
- Модуль 11: Множества
- Модуль 12: Функции
- Модуль 13: Встроенные функции
- Модуль 14: Работа с файлами
- Модуль 15: Обработка исключений
- Модуль 16: Модули и пакеты
- Модуль 17: ООП - Основы
- Модуль 18: ООП - Продвинутый уровень
- Модуль 19: Декораторы
- Модуль 20: Генераторы и итераторы
- Модуль 21: Регулярные выражения
- Модуль 22: Дата и время
- Модуль 23: Математические операции
- Модуль 24: Работа с сетью
- Модуль 25: Асинхронное программирование
- Модуль 26: Многопоточность
- Модуль 27: Тестирование
- Модуль 28: Базы данных
- Модуль 29: Алгоритмы и структуры данных
- Модуль 30: Продвинутые возможности
Добавь новую пару в словарь простым способом
У нас есть словарь person с именем и возрастом. Добавьте в него ключ 'city' со значением 'Moscow'. Заполните пропуски в коде так, чтобы после выполнения словарь содержал три элемента.
person = {'name': 'Anna', 'age': 25}
person[input1S] = input2S
print(person)Что будет выведено?
Посмотрите на код внимательно. Что выведет последняя строка print(d['score'])? Выберите правильный вариант.
d = {'score': 90}
d['score'] = 95
d['score'] = 100
print(d['score'])Исправьте две ошибки при добавлении элементов
В коде есть две ошибки, из-за которых новые элементы не добавляются в словарь. Найдите и исправьте строки, чтобы в итоге словарь содержал ключи 'price' и 'discount'.
product = {'name': 'Laptop'}product[price] = 1200product['discount'] == 0.1print(product)Добавление элемента методом update()
Заполните пропуски, чтобы с помощью метода update() добавить в словарь сразу две новые пары: 'color': 'black' и 'weight': 1.3.
phone = {'brand': 'Apple', 'model': 'iPhone 14'}
phone.input1S({input2S: input3S, input4S: input5S})
print(phone)Соберите словарь из готовых токенов
Перетащите токены из банка в правильные места, чтобы получился словарь car с четырьмя характеристиками автомобиля. Лишние токены останутся в банке.
car = {
input1S: input2S,
input3S: input4S,
'year': input5S,
'electric': input6S
}Соберите код добавления и изменения элементов
Перетащите строки в правильном порядке, чтобы сначала создался словарь, потом добавился новый элемент, а затем изменилось существующее значение. Две строки лишние.
scores['math'] = 95scores = {'math': 80, 'physics': 88}print(scores)scores['math'] += 10del scores['physics']scores.update({'math': 100})Безопасное добавление с setdefault()
Заполните пропуски, чтобы добавить ключ 'bonus' со значением 500 только если его ещё нет в словаре. Если ключ уже есть — значение не должно измениться.
employee = {'name': 'Kate', 'salary': 3000, 'bonus': 200}
employee.input1S('bonus', input2S)
print(employee['bonus'])Какой будет итоговый словарь?
После выполнения кода ниже введите ровно то, что будет выведено командой print(data). Введите весь словарь в одну строку без лишних пробелов.
data = {'a': 1, 'b': 2}
data['b'] = 22
data.update({'c': 3, 'a': 10})
print(data)Что произойдёт при попытке добавить дублирующийся ключ?
Изучите код и выберите, что будет выведено в последней строке.
settings = {'theme': 'dark', 'lang': 'ru'}
settings.update({'theme': 'light', 'notifications': True})
print(settings['theme'])Найдите и исправьте ошибку с изменяемым значением по умолчанию
Код содержит классическую ловушку при использовании setdefault() с изменяемым объектом. Исправьте одну строку, чтобы каждый вызов функции создавал новый список.
def add_items(key): data = {} data.setdefault(key, []) data[key].append(1) return data print(add_items('x'))print(add_items('y'))