dict.pop()
Метод pop() удаляет из словаря пару с заданным ключом и возвращает её значение. Если ключа нет — возвращает default (если задан), иначе возбуждает KeyError. Удобен, когда нужно одновременно достать значение и удалить его из словаря.
Сигнатура
dict.pop(key[, default])
Параметры
key— ключ, который нужно удалить.default— необязательное значение, возвращаемое, еслиkeyне найден. Без него отсутствие ключа приводит кKeyError.
Возвращаемое значение
Значение, связанное с удалённым ключом. Если ключа нет и задан default — возвращается default.
Примеры использования
Пример 1. Удаление существующего ключа.
sensors = {"temp": 24.5, "humidity": 60, "pressure": 1013}
value = sensors.pop("humidity")
print("Удалили:", value)
print("Осталось:", sensors)
Удалили: 60
Осталось: {'temp': 24.5, 'pressure': 1013}
Пример 2. Ключ отсутствует — без default.
d = {"a": 1}
try:
d.pop("b")
except KeyError as e:
print("Ключ не найден:", e)
Ключ не найден: 'b'
Пример 3. Ключ отсутствует — с default.
d = {"a": 1}
value = d.pop("b", "нет данных")
print(value)
нет данных
Пример 4. Перенос значения в другую переменную.
config = {"baud": 9600, "pin": 13, "mode": "input"}
pin = config.pop("pin")
print("Пин:", pin)
print("Конфиг без пина:", config)
Пин: 13
Конфиг без пина: {'baud': 9600, 'mode': 'input'}
Пример 5. Очистка временных ключей.
data = {"x": 1, "y": 2, "_tmp": 99, "_debug": True}
for key in ["_tmp", "_debug", "_missing"]:
data.pop(key, None)
print(data)
{'x': 1, 'y': 2}
См. также
dict.popitem() — удалить последнюю пару
dict.clear() — очистить весь словарь
dict.get() — получить значение, не удаляя
Примечание
Лицензия и источники
Техническое описание метода адаптировано из официальной документации Python (https://docs.python.org), доступной под Python Software Foundation License Version 2. Перевод на русский, примеры использования и пояснения — © AlashEd Wiki.