学生就业问题

实现以下功能‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬
键盘输入某个班级各个同学就业的行业名称,行业名称之间用空格间隔(回车结束输入)。完善python代码,统计各行各业就业的学生数量,按数量从高到低方式输出。例如输入:‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬
交通 金融 计算机 交通 计算机 计算机‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬
输出参考格式如下,其中冒号为英文冒号:‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬
计算机:3‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬
交通:2‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬
金融:1

names = input("请输入各个同学行业名称,行业名称之间用空格间隔(回车结束输入):")
t = names.split()   #str.split(sep=None):返回一个列表,由str根据sep被分割的部分构成,省略sep默认以空格分割。
d = {}
for c in range(len(t)):d[t[c]]= d.get(t[c],0)+1   #d.get(k,):键k存在,则返回相应值,不存在则返回 值。在d字典中找t[c]即某一行业名称,没有的话给这个键的值赋0,有的话+1,完成行业计数操作。d是一个字典,d[键]会输出键对应的值。
ls = list(d.items())   #d是一个字典,键为行业名称,值为该行业出现的次数。.items()返回所有的键值对,list()函数将返回值转换成列表
ls.sort(key=lambda x:x[1], reverse=True) # 按照数量排序。sort方法中的lambda用来指定在列表中使用哪一列作为排序列。默认的排序方法是从小到大,若reverse=True,则返回的排序就是从大到小。这行代码的功能就是对一个列表按照键值对的2个元素的第2个元素进行排序。
for k in range(len(ls)):zy,num = ls[k]print("{}:{}".format(zy,num))


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部