# 统计票数 polls_file = open("polls.txt", "r") votes = {} for line in polls_file: name, *books = line.strip().split() for book in books: if book in votes: votes[book] += 1 else: votes[book] = 1 polls_file.close() # 按得票数从高到低排序并输出结果到文件 result_file = open("result.txt", "w") sorted_votes = dict(sorted(votes.items(), key=lambda item: item[1], reverse=True)) for book, vote in sorted_votes.items(): result_file.write("{}:{}\补充完代码
时间: 2024-03-31 21:37:22 浏览: 47
该程序实现投票及统计选票并输出
5星 · 资源好评率100%
}".format(book, vote)) result_file.close()
这段代码的作用是从文本文件 "polls.txt" 中读取投票记录,统计每本书的得票数,并将结果按照得票数从高到低排序,最后将排序结果输出到文本文件 "result.txt" 中。
代码首先打开 "polls.txt" 文件,并创建一个空字典 votes 来记录每本书的得票数。然后,对于文件中的每一行记录,使用 split() 方法将投票人 name 和他所投的书 books 分开,并逐一遍历 books 中的每本书。如果字典 votes 中已经存在该书的记录,则将其得票数加一;否则,将其得票数设为 1。
接下来,代码打开 "result.txt" 文件,并使用 sorted() 函数将 votes 中的记录按照得票数从高到低排序,并存储到 sorted_votes 字典中。最后,遍历 sorted_votes 中的每一项,并使用 write() 方法将每本书和其得票数写入 "result.txt" 文件中。
阅读全文