python容器之字典
"""
字典的定义, 同样使用{}, 不错存储的元素是一个个的: 键值对, 语法如下:
# 定义字典字面量
{key:vlaue, ..., key: value}
# 定义字典变量
my_dict = {key:vlaue, ..., key: value}
# 定义空字典, 有如下2种方式:
my_dict = {}
my_dict = dict()
"""
my_dict2 = {}
my_dict3 = dict()
print(f"字典my_dict2的内容是: {my_dict2}, 类型是: {type(my_dict2)}")
print(f"字典my_dict3的内容是: {my_dict3}, 类型是: {type(my_dict3)}")
my_dict = {"张三": 18, "李四": 20}
print(f"字典my_dict的内容是: {my_dict}, 类型是: {type(my_dict)}")
my_dict = {"张三": 18, "李四": 20, "李四": 22}
print(f"重复key的字典的内容是: {my_dict}")
age = my_dict["张三"]
print(f"张三的年龄是: {age}")
age = my_dict["李四"]
print(f"李四的年龄是: {age}")
my_dict = {
"张三": {
"语文": 80,
"数学": 79,
"英语": 98
},
"李四": {
"语文": 76,
"数学": 89,
"英语": 90
},
"王五": {
"语文": 90,
"数学": 96,
"英语": 60
}
}
print(f"打印嵌套字典 my_dict 的内容: {my_dict}")
score = my_dict.get("张三").get("语文")
print(f"从字典my_dict中获取张三的语文成绩为: {score}")
my_dict = {"张三": {"语文": 80, "数学": 79, "英语": 98}}
my_dict.get("张三")["数学"] = 100
print(f"修改张三的数学成绩: {my_dict}")
my_dict["孙2狗"] = {"语文": 70, "数学": 72, "英语": 79}
print(f"字典新增元素: {my_dict}")
keys = my_dict.keys()
for key in keys:
print(f"字典的key是: {key}")
print(f"字典的val是: {my_dict.get(key)}")
print(f"字典的val是: {my_dict[key]}")
print(f"输出字典内的元素数量: {len(my_dict)}")
"""
字典练习:
有 如下员工信息, 请使用字典完成数据的记录。
并通过for循环, 对所有级别为1级的员工, 级别上升1级, 薪水增加1000元
姓名 部门 工资 级别
张三 科技部 3000 1
李四 市场部 5000 2
王五 市场部 7000 3
赵六 科技部 4000 1
田七 市场部 6000 2
"""
my_dict = {
"张三": {"部门": "科技部", "工资": 3000, "级别": 1},
"李四": {"部门": "市场部", "工资": 5000, "级别": 2},
"王五": {"部门": "市场部", "工资": 7000, "级别": 3},
"赵六": {"部门": "科技部", "工资": 4000, "级别": 1},
"田七": {"部门": "市场部", "工资": 6000, "级别": 2}
}
print(f"全体员工当前信息如下: \n {my_dict}")
for key in my_dict.keys():
tmp_dict = my_dict.get(key)
level = tmp_dict.get("级别")
if level == 1:
tmp_dict["级别"] = level + 1
salary = tmp_dict.get("工资") + 1000
tmp_dict["工资"] = salary
print(f"全体员工级别为1的员工完成升值加薪操作, 操作后: \n {my_dict}")