目录
1、字典的定义
字典的定义,同样使用{},不高过存储的元素是一个个的:键值对。
1.1 基本语法
{ key:value, key:value,key:valus,...}
1.2 定义变量
my_dict = { key:value, key:value,key:valus,...}
1.3 定义空字典
my_dict = {}
my_dict = dict()
2、字典的相关操作
2.1 定义字典
# 1. 定义字典
my_dict1 = {"张三":99,"李四":88,"王五":77}
print(f"字典1的内容是:{my_dict1},类型:{type(my_dict1)}")
字典1的内容是:{'张三': 99,,'王五': 77},类型:<class 'dict'>
2.2 定义空字典
# 2. 定义空字典
my_dict2 = {}
my_dict3 = dict()
print(f"字典2的内容是:{my_dict2},类型:{type(my_dict2)}")
print(f"字典3的内容是:{my_dict3},类型:{type(my_dict3)}")
字典2的内容是:{},类型:<class 'dict'>
字典3的内容是:{},类型:<class 'dict'>
2.3 字典数据的获取
# 3. 字典数据的获取
score = my_dict1["张三"]
print(f"张三的考试分数:{score}")
张三的考试分数:99
2.4 字典的嵌套
# 4. 字典的嵌套
mydict = {"张三":{"语文":77,"数学":66,"英语":55},
"李四":{"语文":78,"数学":67,"英语":33},
"王五":{"语文":85,"数学":62,"英语":40}
}
print(f"学生的考试信息:{mydict}")
学生的考试信息:{'张三': {'语文': 77, '数学': 66, '英语': 55}, '李四': {'语文': 78, '数学': 67, '英语': 33}, '王五': {'语文': 85, '数学': 62, '英语': 40}}
2.5 从嵌套字典中获取数据
stu_score = mydict["王五"]["语文"]
print(f"王五的语文分数是:{stu_score}")
王五的语文分数是:85
2.6 增加/更新数据
key不存在就是增加,key存在就是更新。
# 5. 增加/更新元素(key不存在就是增加;key存在就是更新)
#增加
my_dict = {"张三":99,"李四":88,"王五":77}
my_dict["丽丽"] = 66
print(f"字典经过新增元素后,结果:{my_dict}")
字典经过新增元素后,结果:{'张三': 99, '李四': 88, '王五': 77, '丽丽': 66}
#更新
my_dict["王五"] = 50
print(f"字典经过更新元素后,结果:{my_dict}")
字典经过更新元素后,结果:{'张三': 99, '李四': 88, '王五': 50, '丽丽': 66}
2.7 删除数据
# 6. 删除元素
score = my_dict.pop("王五")
print(f"字典经过移除元素后,结果:{my_dict},王五的考试分数:{score}")
字典经过移除元素后,结果:{'张三': 99, '李四': 88, '丽丽': 66},王五的考试分数:50
2.8 清空元素
语法:字典.clear()
2.9 获取全部key
# 8. 获取全部key
keys = my_dict.keys()
print(f"字典的全部keys,结果:{keys}")
字典的全部keys,结果:dict_keys(['张三', '李四', '丽丽'])
2.10 遍历字典
# 9. 遍历字典
for key in keys:
print(f"字典的key是:{key}")
print(f"字典的value:{my_dict[key]}")
for key in my_dict:
print(f"字典的key是:{key}")
print(f"字典的value:{my_dict[key]}")
3、字典的常用操作总结
操作 | 功能 |
字典[key] | 获取指定key对应的value值 |
字典[key] = value | 添加/更新键值对 |
字典.pop(key) | 删除键值对 |
字典.clear() | 清空字典 |
字典.keys() | 获取全部key值 |
len(字典) | 统计元素数量 |
4、字典的特点
- 每一份数据都是键值对
- 可以通过key获取到value,key不重复
- 不支持下标索引
- 支持for循环,不支持while循环