问题2:在PY301-2.py文 件中修改代码,读入”earpa001.txt”文件中 的数据,统计earpa001对 应的职员在各
楼层和区域出现的次数,保存到”earpa001_ count.txt”文件, 每条记录-行,位置信息和出现的次数之间用英文
半角逗号隔开,行尾无空格,无空行。参考格式如下。
1-1,5|
1-4,3
. ..(略)
含义如下:
第1行”1-1:5”中1-1表示1楼1号区域,5表示出现5次;
第2行”1-4:3″中1-4表示1楼4号区域,3表示出现3次;
参考答案
- fi = open("earpa001.txt","r")
- fo = open("earpa001_count.txt","w")
- d = {}
- for line in fi:
- #['2016/5/31 0:20',' earpa001','1','1']
- s = line.strip().split(",")
- #1-1
- key_name = s[-2]+"-"+s[-1]
- #添加成{"1-1":5}
- d[key_name] = d.get(key_name,0)+1
- ls = list(d.items())
- ls.sort(key=lambda x:x[1], reverse=True) # 该语句用于排序
- #[("1-1",5),("1-4",3)]
- for i in ls:
- fo.write('{},{}\n'.format(i[0],i[1]))
- #关闭文件
- fi.close()
- fo.close()