python一些字典基础的总结
函数dict
与list、tuple和str一样,dict其实根本就不是函数,而是一个类
可使用函数dict 从其他映射(如其他字典)或键-值对序列创建字典。
>>> items = [('name', 'Gumby'), ('age', 42)]
>>> d = dict(items)
>>> d
{'age': 42, 'name': 'Gumby'}
>>> d['name']
'Gumby‘
- 还可使用关键字实参来调用这个函数
>>> d = dict(name='Gumby', age=42)
>>> d
{'age': 42, 'name': 'Gumby'}
基本的字典操作
字典的基本行为在很多方面都类似于序列
- len(d)返回字典d包含的项(键-值对)数。
- d[k]返回与键k相关联的值。
- d[k] = v将值v关联到键k。
- del d[k]删除键为k的项。
- k in d检查字典d是否包含键为k的项。
相比于检查列表是否包含指定的值,检查字典是否包含指定
的键的效率更高。数据结构越大,效率差距就越大
字典方法
- clear
方法clear删除所有的字典项,这种操作是就地执行的(就像
list.sort一样),因此什么都不返回(或者说返回None) - copy
方法copy返回一个新字典,其包含的键-值对与原来的字典相同
(这个方法执行的是浅复制,因为值本身是原件,而非副本)。 - fromkeys
方法fromkeys创建一个新字典,其中包含指定的键,且每个键对
应的值都是None - get
方法get为访问字典项提供了宽松的环境。通常,如果你试图访问
字典中没有的项,将引发错误。 - items
方法items返回一个包含所有字典项的列表,其中每个元素都为
(key, value)的形式。字典项在列表中的排列顺序不确定。 - keys
方法keys返回一个字典视图,其中包含指定字典中的键。 - pop
方法pop可用于获取与指定键相关联的值,并将该键-值对从字典中删除。 - popitem
方法popitem类似于list.pop,但list.pop弹出列表中的最后一
个元素,而popitem随机地弹出一个字典项,因为字典项的顺序是
不确定的,没有“最后一个元素”的概念。如果你要以高效地方式逐
个删除并处理所有字典项,这可能很有用,因为这样无需先获取键
列表。 - setdefault
方法setdefault有点像get,因为它也获取与指定键相关联的值,
但除此之外,setdefault还在字典不包含指定的键时,在字典中
添加指定的键-值对 - update
方法update使用一个字典中的项来更新另一个字典。 - values
方法values返回一个由字典中的值组成的字典视图。不同于方法
keys,方法values返回的视图可能包含重复的值。
本内容来自于《python的基础教程第三版》