Есть словарь config = {'timeout': 10, 'retries': 3}. Что произойдёт при вызове config.pop('timeout', None)?

AВернёт None и не удалит ключ из словаря: задан второй аргумент по умолчанию
BВернёт 10 и удалит ключ 'timeout' из словаря, оставив пару 'retries': 3
CВернёт новый словарь без ключа 'timeout' как новый объект, не меняя config
DВыбросит KeyError: метод pop() у словаря не принимает значение по умолчанию
Правильный ответ. Метод dict.pop(key, default) возвращает значение по ключу, удаляет пару из словаря и не падает с ошибкой, если задан default.

Разбор

Вызов config.pop('timeout', None) найдёт ключ 'timeout', вернёт его значение 10 и удалит пару из словаря. Если бы ключа не было, метод вернул бы значение по умолчанию None без ошибки. Без второго аргумента pop() выбросит KeyError при отсутствии ключа — как и обращение через d[key].

Проверь себя · 1/3разбор после ответа
Есть словарь config = {'timeout': 10, 'retries': 3}. Что произойдёт при вызове config.pop('timeout', None)?
Тренировать Python в Telegram

Ещё вопросы по теме «Коллекции и структуры данных»