字典以 关键字 为索引,关键字通常是字符串或数字,也可以是其他任意不可变类型。只包含字符串、数字、元组的元组,也可以用作关键字。但如果元组直接或间接地包含了可变对象,就不能用作关键字。
例:列表不能当关键字,因为列表可以用索引、切片、append()
、extend()
等方法修改。
可以把字典理解为 键值对 的集合,但字典的键必须是唯一的。花括号 {}
用于创建空字典。另一种初始化字典的方式是,在花括号里输入逗号分隔的键值对,这也是字典的输出方式。
字典的主要用途是通过关键字存储、提取值。用 del
可以删除键值对。用已存在的关键字存储值,与该关键字关联的旧值会被取代。通过不存在的键提取值,则会报错。
对字典执行 list(d)
操作,返回该字典中所有键的列表,按插入次序排列(如需排序,请使用 sorted(d)
)。检查字典里是否存在某个键,使用关键字 in。
# 创建字典
>>> a = {'zh':22,'xy':23,'yj':'24'}
>>> a
{'zh': 22, 'xy': 23, 'yj': '24'}
>>> b = dict([('zh',22),('xy',23),('yj',24)])
>>> b
{'zh': 22, 'xy': 23, 'yj': 24}
#添加字典数据
>>> a['hsy'] = 22
>>> a
{'zh': 22, 'xy': 23, 'yj': '24', 'hsy': 22}
#删除字典数据
>>> del a['xy']
>>> a
{'zh': 22, 'yj': '24', 'hsy': 22}
#
>>> list(a)
['zh', 'yj', 'hsy']
>>> sorted(a)
['hsy', 'yj', 'zh']
>>> 'hsy' in a
True
>>> 'xy' not in a
True