目录[-]
一、字典
将一系列键值对使用{}包含。
空的字典为False。
len可以返回字典键值对的个数。
字典的键不可变类型。
字典的键可以是 : 数字 整数 浮点数 字符串 布尔值 元祖。
字典的值可以是任意数据类型。
1.创建字典
字典的创建格式:字典名 = {key1:value,key2:value......}
字典中的每一个key值是唯一的、不可改变的,查找value通过key实现极为方便、快捷
创建一个空字典:a = dict() 或者 a = {}
2.字典的访问
字典的访问主要是通过key值来进行。
格式:字典名[key]
1)直接通过key值访问
#input dict_01 = {'小明':18,'小红':19,'小刚':17} a = dict_01['小明'] print(a) #output 18
使用该方式时,如果访问的key值不存在,程序将会报错:KeyError: '小黑’
2)使用 字典名.get(key)
#input
dict_01 = {'小明':18,'小红':19,'小刚':17}
a = dict_01.get('小黑')
print(a)
#output
None
使用此方式访问字典中数据时,当访问的key值不存在时,返回None。该方式在我们写项目时较为常用。
3.字典的操作
字典的操作主要有:增加、删除、替换以及遍历
1)增加
可以直接使用新的key值进行赋值即可。
#input dict_01 = {'小明':18,'小红':19,'小刚':17} dict_01['小黑'] = 24 print(dict_01) #output {'小明': 18, '小红': 19, '小刚': 17, '小黑': 24}
2)删除
a. del dict[key]
#input dict_01 = {'小明':18,'小红':19,'小刚':17} del dict_01['小明'] print(dict_01) #output {'小红': 19, '小刚': 17}
b. dict.pop(key,[default])
删除成功,返回key对应的value值。删除失败,返回default定义的值,中括号内的可省略
Eg: result = dict_1.pop(‘张三’,’字典中没有此键’)
1.
#input dict_01 = {'小明':18,'小红':19,'小刚':17} a = dict_01.pop('小明') print(dict_01) print(a) #output {'小红': 19, '小刚': 17} 18
2.
#input dict_01 = {'小明':18,'小红':19,'小刚':17} a = dict_01.pop('小黑','字典中没有该key值') print(dict_01) print(a) #output {'小明': 18, '小红': 19, '小刚': 17} 字典中没有该key值
c. dict.popitem()
删除字典中最后一对键值对,然后将他们均返回出来
#input dict_01 = {'小明':18,'小红':19,'小刚':17} key_01,value_01 = dict_01.popitem() print(dict_01) print(key_01) print(value_01) #output {'小明': 18, '小红': 19} 小刚 17
d. dict.clear()
clear() 同列表的clear()。清除字典内的所有内容
#input dict_01 = {'小明':18,'小红':19,'小刚':17} dict_01.clear() print(dict_01) #output {}
3)替换
替换的原理和增加字典元素是基本相同的。替换是对字典中已有元素进行赋值。
#input dict_01 = {'小明':18,'小红':19,'小刚':17} dict_01['小明'] = 24 print(dict_01) #output {'小明': 24, '小红': 19, '小刚': 17}
3)更新
update 合并一个字典到原始字典
返回键对应的值
如果键不存在则返回None
或者返回默认值, 第二个参数
d1 = { 1:2, 3:4, } d1.update({5:6}) print(d1) >>{1: 2, 3: 4, 5: 6}
4.字典的内置函数
1、keys():将字典里的每个键以字符串的形式,存储为所生成列表里的单个元素
d1 = { 1:2, 3:4, } print(d1.keys()) >> dict_keys([1, 3]) 遍历字典的键 for key in d1.keys(): print(key) >>1 >>3
2、values():将字典里的每个值以字符串的形式,存储为所生成列表里的单个元素
d1 = { 1:2, 3:4, } print(d1.values()) >> dict_values([2, 4]) 遍历字典的值 for value in d1.values(): print(value) >> 2 >> 4
3、items():将字典里对应的一对键和值以元组的形式(键, 值),存储为所生成序列里的单个元素
d1 = { 1:2, 3:4, } print(d1.items()) >>dict_items([(1, 2), (3, 4)]) 遍历字典 for key,value in d1.items(): print(key,value) >>1 2 >>3 4