这是一个员工工资表问题,给出的参考答案存在一定的问题,我们分析一下。
类型:Python 组合数据类型
参照代码模板完善代码,实现下述功能。
在代码模板里定义了一个字典,key是员工的姓名,value是由部门和工资构成的列表,用逗号隔开。示例如下:
members = {'张三':['人力部',5500],
'李四':['后勤部',4500],
...(略)
将姓名和工资显示在屏幕上,示例如下:
张三的工资是:5500,部门是人力部
李四的工资是:4500,部门是后勤部
...略)
工资最高的部门是:开发部,该部门工资是:8500
**示例1:**
输入:无
输出:"
张三的工资是:5500, 部门是人力部
李四的工资是:4500, 部门是后勤部
王三的工资是:6500, 部门是市场部
赵六的工资是:8500, 部门是开发部
工资最高的部门是:开发部,该部门工资是:8500
"
题目要求需要把以下代码补充完整:
members = {'张三':['人力部',5500],
'李四':['后勤部',4500],
'王三':['市场部',6500],
'赵六':['开发部',8500]
}
sal_dep = {}
for key in members:
print('{}的工资是:{}, 部门是{}'.format(_________))
…
print('工资最高的部门是:{},该部门工资是:{}'.format(max_name,max_val))
# -*- coding:utf-8 -*-
'''
This is a python123.io file.
'''
members = {'张三':['人力部',5500],
'李四':['后勤部',4500],
'王三':['市场部',6500],
'赵六':['开发部',8500]
}
sal_dep = {}
for key in members:
print('{}的工资是:{}, 部门是{}'.format(key, members[key][1], members[key][0]))
sal_dep[members[key][1]] = members[key][0]
max_val = max(sal_dep)
max_name = sal_dep[max_val]
print('工资最高的部门是:{},该部门工资是:{}'.format(max_name,max_val))
1. 通过遍历字典来获取各部门的工资,通过生成一个以部门工资为键,以部门为键值的字典,再通过max直接得到工资最高的键,再获得其键值,就得到了这个工资对应的部门。
2. 该代码存在以下缺点:官方的解题思路比较简单,没有考虑到如果两个不同部门的工资一样,这样就不能把工资作为键了。所以把数字作为键名的风险是很大的,因为字典不允许有重复键名的现象,当两个部门工资一样时,就可能出现问题。
改进的思路是把部门作为键名,部门工资作为键值对,这样可以最大限度地减少键名重合。同时,在获取部门最高的工资时,我们利用lambda函数,按照字典键值为key获取最大值就可以了。修改后的代码如下:
members = {'张三':['人力部',5500],
'李四':['后勤部',4500],
'王三':['市场部',6500],
'赵六':['开发部',8500]
}
sal_dep = {}
for key in members:
print('{}的工资是:{}, 部门是{}'.format(key, members[key][1], members[key][0]))
sal_dep[members[key][0]] = members[key][1]
max_val = max(sal_dep,key = lambda x:sal_dep[x])
max_name = sal_dep[max_val]
print('工资最高的部门是:{},该部门工资是:{}'.format(max_name,max_val))
以上就是“Python二级:统计员工工资表”的全部内容,希望对你有所帮助。
关于Python技术储备
学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!
一、Python所有方向的学习路线
Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
二、Python必备开发工具
三、Python视频合集
观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
四、实战案例
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
五、Python练习题
检查学习结果。
六、面试资料
我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
最后祝大家天天进步!!
上面这份完整版的Python全套学习资料已经上传至CSDN官方,朋友如果需要可以直接微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】。