Метод pop() словаря Python
Описание
Метод pop() словаря Python удаляет значение, соответствующее заданному ключу в словаре, и возвращаемое значение — это удалённое значение.
Синтаксис
Синтаксис метода pop():
pop(key[,default])
Parameters
- key— Ключ, который нужно удалить
- default— Значение, возвращаемое, когда ключ не существует
Возвращаемое значение
Возвращает удалённое значение:
- Если
keyсуществует — удаляет соответствующий элемент в словаре - Если
keyне существует — возвращает значение по умолчанию, указанное в default - Если
keyне существует, и значение по умолчанию не задано - вызываетKeyErrorисключение
Пример
Следующий пример демонстрирует, как использовать метод pop():
Пример
#!/usr/bin/python
# -*- coding: UTF-8 -*-
site= {'name': 'Example', 'alexa': 10000, 'url': 'www.example.com'}
element = site.pop('name')
print('Deleted element:')
print(element)
print('Dictionary:')
print(site)
# -*- coding: UTF-8 -*-
site= {'name': 'Example', 'alexa': 10000, 'url': 'www.example.com'}
element = site.pop('name')
print('Deleted element:')
print(element)
print('Dictionary:')
print(site)
Результат вывода:
删除的元素为:
Example
字典为:
{'url': 'www.example.com', 'alexa': 10000}
Если удаляемый ключ не существует, будет вызвано исключение:
Пример
#!/usr/bin/python
# -*- coding: UTF-8 -*-
site= {'name': 'Example', 'alexa': 10000, 'url': 'www.example.com'}
element = site.pop('nickname')
print('Deleted element:')
print(element)
print('Dictionary:')
print(site)
# -*- coding: UTF-8 -*-
site= {'name': 'Example', 'alexa': 10000, 'url': 'www.example.com'}
element = site.pop('nickname')
print('Deleted element:')
print(element)
print('Dictionary:')
print(site)
Результат вывода:
Traceback (most recent call last):
File "test.py", line 6, in <module>
element = site.pop('nickname')
KeyError: 'nickname'
Вы можете задать значение по умолчанию, чтобы избежать исключения:
Пример
#!/usr/bin/python
# -*- coding: UTF-8 -*-
site= {'name': 'Example', 'alexa': 10000, 'url': 'www.example.com'}
element = site.pop('nickname', 'non-existent key')
print('Deleted element:')
print(element)
print('Dictionary:')
print(site)
# -*- coding: UTF-8 -*-
site= {'name': 'Example', 'alexa': 10000, 'url': 'www.example.com'}
element = site.pop('nickname', 'non-existent key')
print('Deleted element:')
print(element)
print('Dictionary:')
print(site)
Результат вывода:
删除的元素为:
不存在的 key
字典为:
{'url': 'www.example.com', 'alexa': 10000, 'name': '\xe8\x8f\x9c\xe9\xb8\x9f\xe6\x95\x99\xe7\xa8\x8b'}
Другие расширения
Словарь Python