Python3数据类型-字典-04
4.1 什么是字典(dict)?
字典同样是一种容纳多个元素的容器,在很多方面和列表类似。但是,不同的一点是,字典不是以位置来索引的。
字典包含多个元素,每个元素以,
分隔开,每个元素包含两部分:键(Key)
和值(Value)
,键(Key)
和值(Value)
之间用冒号:
分隔开。所有元素用大括号{}
扩起来。
字典元素的索引正是依靠元素的键(Key)
实现的。
字典元素的键(Key)
必须是唯一的,值则不需要唯一。
d = {key1 : value1, key2 : value2 }
值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。
4.2 构建一个字典
dict_score = {'Smith': 90, 'Tim': 88, 'Leo': 92, 'Chris': 87}
dict1 = {28.5: 36}
dict2 = {'abc': 12, 'ghi': 16}
print(dict_score)
print(dict1)
print(dict2)
输出结果为:
dict_score = {'Smith': 90, 'Tim': 88, 'Leo': 92, 'Chris': 87}
dict1 = {28.5: 36, 16.7: 74}
dict2 = {'abc': 12, 'ghi': 16}
4.3 字典的访问
字典的访问是通过键来实现的,例如:
print(dict_score['Leo'])
print(dict1[16.7])
print(dict2['ghi'])
输出结果为:
92
74
16
4.4 字典修改和删除
前面提到,字典是一种可变的数据类型,那么我们就可以对其进行修改或者删除。
字典的修改:包括对字典已有的值的重新复制以及增加一组键和值。
# 下面演示一下对字典进行修改
dict_score['Chris'] = 95
dict_score['Steve'] = 89
dict1[28.5] = 12
dict2['abc'] = 8
print(dict_score)
print(dict1)
print(dict2)
输出结果如下:
{'Smith': 90, 'Tim': 88, 'Leo': 92, 'Chris': 95, 'Steve': 89}
{28.5: 12, 16.7: 74}
{'abc': 8, 'ghi': 16}
字典的删除:包括对已有值的删除del
和对整个字典的清空clear
。
# 下面演示一下字典的删除
del dict_score['Tim']
dict1.clear()
# del dict2
print(dict_score)
print(dict1)
print(dict2)
输出结果如下:
{'Smith': 90, 'Leo': 92, 'Chris': 95, 'Steve': 89}
{}
{'abc': 8, 'ghi': 16}
需要注意的是,对整个字典执行del
命令之后,系统将整个字典从内存中删除,删除后在执行print
命令,系统会报错,提示未定义。
clear
命令只是清空了这个字典中的所有键及值,但是字典本身还存在于系统内。
4.5 字典内置函数
主要的内置函数:
len(dict) —— 字典的长度,即键的总数
str(dict) —— 输出字典,以可打印的字符串表示
type(dict) —— 返回字典的类型
4.6 小结
这一节我学习了字典的一些基础知识,一些字典内置方法我没有继续学习,我将在今后具体应用过程中再来学习和加深。
下一节我将学习一下集合。
网友评论