Дан словарь d = {"country": "RU"}. Нужно прочитать значение по ключу "city", а если ключа нет — вернуть строку "unknown" без исключения. Что подходит?
A
d["city"] or "unknown"B
d.get("unknown", "city")C
d.get("city", "unknown")D
d.setdefault("city", "unknown")Правильный ответ.
.get(key, default) возвращает значение по ключу или значение по умолчанию и не выбрасывает KeyError.Разбор
Обращение d["city"] выбросит KeyError, если ключа нет. Метод .get("city", "unknown") безопасно вернёт значение по ключу, а при его отсутствии — строку по умолчанию. Если второй аргумент не передавать, .get("city") вернёт None. Метод .setdefault("city", "unknown") тоже вернёт значение по ключу или дефолт, но при отсутствии ключа дополнительно запишет его в словарь — это побочный эффект, который часто нежелателен.
Проверь себя · 1/3разбор после ответа
Дан список
nums = [10, 20, 30, 40]. Чему равен результат выражения nums[1:3]?Ещё вопросы по теме «Коллекции и структуры данных»
- Есть список событий `events = ["click"]`. Объект `events` используется в нескольких местах по ссылке, поэтому важно изменить именно тот же объект (не создавать новый). Нужно добавить элементы из `new_events = ["view", "purchase"]`, чтобы итог был плоским. Какой вариант корректен?
- В логах есть список `user_ids` с повторениями. Как получить количество уникальных пользователей?
- Что произойдёт при выполнении кода `t = (1, 2); t[0] = 9`?
- Дан список `nums = [10, 20, 30, 40]`. Чему равен результат выражения `nums[1:3]`?
- Есть словарь метрик `metrics = {"views": 100, "clicks": 5}`. Как корректно пройтись по парам ключ-значение в цикле `for`?
- Все вопросы по «Коллекции и структуры данных» →