目录
字典同样适用{} 不过存储的元素是一个个的:键值对,如下语法
- # 定义字典字面量
- {key:value, key:value,....,key:value}
-
- # 定义字典变量
- my_dict = {key: value, key: value ,.....}
-
- #定义空字典
-
- my_dict = {} #空字典定义方式1
- my_dict = dict() #空字典定义方式2
字典同集合一样,不可以使用下标索引
但是字典可以通过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() 结果:字典被修改 元素被清空
语法:字典.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