python除了列表,元组,集合存储数据类型外,还有字典存储类型,它和Java中Map类型相同。都是一种使用“键值对结构”存储数据的存储模型。字典不具有索引的概念,字典使用键key代替索引,可以根据键key进行数据的添加、删除、修改、查询操作。字典是可变的。字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中。格式如下:
dict = {‘key1’:value1,‘key2’:value2,‘key3’:value3}
注意的是:字典中的键是唯一的,字典的键经过哈希算法,把键算成独一无二的,为了可以计算,所以我们的键必须是不可变类型:数值(int, float), 布尔(True, False),字符串,元组。
一、访问字典里的值
使用中括号包含键名就可获取值:字典名[键名]
d = {'name':'Jack','age':23,'id':'12345678910'}
d['name']
注意:如果key不存在,dict就会报错:
d = {'name':'Jack','age':23,'id':'12345678910'}
d['dd']
二、修改字典(增/改)
如果要修改的键存在于字典中那么我们做的就是修改操作,如果键值不存在与字典中那么我们做的就是添加操作:
- 添加数据: 变量名[键] = 值 (字典中没有对应的键)
- 修改数据: 变量名[键] = 值 (字典中存在对应的键)
d = {'name':'Jack','age':23,'id':'12345678910'}
print(d)
d['tel'] = '120' # 添加数据
print(d)
d['name'] = 'csx' # 修改数据
print(d)
三、删除字典元素
使用del:能删单一的元素也能清空字典,清空只需一项操作。
dict1 = {'name':'Jack','age':23,'id':'12345678910'}
del dict1['name'] # 删除键 'name'
print("dict1:",dict1)
dict1.clear() # 清空字典
print("dict1:",dict1)
del dict1 # 删除字典
print("dict1:",dict1)
四、字典内置方法/函数
这里则列举部分方法,可以查看菜鸟教程dict
方法 | 说明 |
---|---|
len(dict) | 计算字典元素个数,即键的总数。 |
str(dict) | 输出字典,以可打印的字符串表示。 |
dict.get(key, default=None) | 返回指定键的值,如果值不在字典中返回默认值参数: key – 字典中要查找的键。 default – 如果指定键的值不存在时,返回该默认值值。 |
key in dict | 如果键在字典dict里返回true,否则返回false |
dict.items() | 以列表返回可遍历的(键, 值) 元组数组。 |
dict.values() | 以列表返回字典中的所有值。 |