使用字典和列表型变量完成村长选举。某村有40名有选举权和被选举权的村民,名单有考生文件夹下文
件name.xt给出,从这40名村民中选出一人当村长,40人的投票信息由考生文件夹下文件vote.txt给出,每行是
一张选票的信息,有效票中得票最多的村民当选。
问题1:请从vote.xt中筛选出无效票写入文件vote1.txt。有效票的含义是:选票中只有一-个名字且该名字
在name1.txt文件列表中,不是有效票的票称为无效票。
问题2:给出当选村长的名字及其得票数。在考生文件夹下给出了程序框架文件PY202.py,补充代码完成
程序。
参考答案
f=open("name.txt") names=f.readlines() f.close() f=open("vote.txt") votes=f.readlines()#['冷兴鑫\n', '冯萌 冷兴鑫\n'] f.close() f=open("vote1.txt","w") D={}#{'冷兴鑫':12} NUM=0 for vote in votes: num = len(vote.split()) if num==1 and vote in names: D[vote[:-1]]= D.get(vote[:-1],0)+1 NUM+=1 else: f.write(vote) f.close() #[('冷兴鑫',12),()] l=list(D.items()) l.sort(key=lambda s:s[1],reverse=True) name=l[0][0] score=l[0][1] print("有效票数为:{} 当选村长村民为:{},票数为:{}".format(NUM,name,score))
《 阿福课堂官方网站》免责声明:
1、因考试政策、内容不断变化与调整,本网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准!
2、本网信息来源为其他媒体的稿件转载,免费转载出于非商业性学习目的,版权归原作者所有,如有内容与版权问题等请与本站联系。联系邮箱:1225682794@qq.com。