目录
字典的定义
字典同样适用{} 不过存储的元素是一个个的:键值对,如下语法
# 定义字典字面量
{key:value, key:value,....,key:value}
# 定义字典变量
my_dict = {key: value, key: value ,.....}
#定义空字典
my_dict = {} #空字典定义方式1
my_dict = dict() #空字典定义方式2
字典key 获取value
字典同集合一样,不可以使用下标索引
但是字典可以通过key值取得对应的Value
字典的嵌套
字典的key和value 可以是任意数据类型 key不可为字典
那么就表明字典是可以嵌套的
"""
演示数据容器字典的定义
"""
# 定义字典
my_dict1 = {"wanglihong": 99, "miaowing": 100, "xiaolan": 98}
# 定义空字典
my_dict2 = {}
my_dict3 = dict()
print(f"字典1的内容是:{my_dict1},类型:{type(my_dict1)}")
print(f"字典2的内容是:{my_dict2},类型:{type(my_dict2)}")
print(f"字典3的内容是:{my_dict3},类型:{type(my_dict3)}")
# 定义重复key的字典
# 字典不允许key 重复
# 从字典中基于key获取value
my_dict1 = {"wanglihong": 99, "miaowing": 100, "xiaolan": 98}
print(my_dict1["wanglihong"])
# 定义嵌套字典
stu_score_dict = {
"wanglihong":{
"yuwen":77,
"shuxue":123,
"yingyu":121
},
"zhoujielun":{
"yuwen": 79,
"shuxue": 1233,
"yingyu": 1213
},
"linjunjie":{
"yuwen": 78,
"shuxue": 113,
"yingyu": 111
}
}
print(stu_score_dict)
# 从嵌套字典中获取数据
#看zhoujielun的语文信息
score = stu_score_dict["zhoujielun"]["yuwen"]
print(score)
字典1的内容是:{'wanglihong': 99, 'miaowing': 100, 'xiaolan': 98},类型:<class 'dict'>
字典2的内容是:{},类型:<class 'dict'>
字典3的内容是:{},类型:<class 'dict'>
99
{'wanglihong': {'yuwen': 77, 'shuxue': 123, 'yingyu': 121}, 'zhoujielun': {'yuwen': 79, 'shuxue': 1233, 'yingyu': 1213}, 'linjunjie': {'yuwen': 78, 'shuxue': 113, 'yingyu': 111}}
79
字典的常用操作
新增元素
语法: 字典.[key] = value
结果 字典被修改,新增了元素
更新元素
语法:字典[key] = value
结果:字典被修改 元素被更新
注意: 字典key 不可以重复 所以对已存在的key 执行上述操作 就是更新value 值
删除元素
语法:字典.pop(key),结果:获得指定key的value 同时字典被修改 指定key 的数据被删除
清空字典
语法:字典.clear() 结果:字典被修改 元素被清空
获取全部的key
语法:字典.keys().
结果:得到字典中的全部的key
"""
演示字典常用操作
"""
my_dic = {"zhoujielun": 99, "linjunjie": 88, "zhangxueyou": 77, "zhangxinzhe": 66}
# 新增元素
print(my_dic)
# 更新元素
my_dic["zhoujielun"] = 33
print(my_dic)
# 删除元素
score = my_dic.pop("zhoujielun")
print(score)
print(my_dic)
# 清空元素
my_dic.clear()
print(my_dic)
# 获取全部的key
my_dic = {"zhoujielun": 99, "linjunjie": 88, "zhangxueyou": 77, "zhangxinzhe": 66}
keys= my_dic.keys()
print(f"字典的全部keys是{keys}")
# 遍历字典
# 方式1 通过获取到全部的key来完成遍历
for key in keys:
print(f"字典的key是{key}")
print(f"字典的value是{my_dic[key]}")
# 方式2 直接对字典进行for 循环 每一次循环都是直接得到Key
for key in my_dic:
print(key)
print(my_dic[key])
# 统计字典内的元素数量
num = len(my_dic)
print(num)
{'zhoujielun': 99, 'linjunjie': 88, 'zhangxueyou': 77, 'zhangxinzhe': 66}
{'zhoujielun': 33, 'linjunjie': 88, 'zhangxueyou': 77, 'zhangxinzhe': 66}
33
{'linjunjie': 88, 'zhangxueyou': 77, 'zhangxinzhe': 66}
{}
字典的全部keys是dict_keys(['zhoujielun', 'linjunjie', 'zhangxueyou', 'zhangxinzhe'])
字典的key是zhoujielun
字典的value是99
字典的key是linjunjie
字典的value是88
字典的key是zhangxueyou
字典的value是77
字典的key是zhangxinzhe
字典的value是66
zhoujielun
99
linjunjie
88
zhangxueyou
77
zhangxinzhe
66
4
Process finished with exit code 0