用python编写程序计票机制,选手获得的票数越多,排名就越靠前接收选手的姓名和票数,输出排序后的成绩。
时间: 2024-10-28 09:07:59 浏览: 209
在Python中,我们可以使用字典来存储每个选手及其对应的票数,并利用内置的`sorted()`函数配合自定义的排序关键字来实现按票数降序排列。以下是一个简单的例子:
```python
def count_votes():
# 创建一个空字典来存储选手和他们的票数
candidates = {}
# 循环接收用户输入,直到没有更多输入为止
while True:
name = input("请输入选手姓名(输入'quit'结束计票):")
if name.lower() == 'quit':
break
vote_count = int(input(f"{name}获得了多少票?:"))
# 添加票数到字典中,如果名字已存在,则累加票数
candidates[name] = candidates.get(name, 0) + vote_count
# 对候选人的字典按照票数降序排序
sorted_candidates = dict(sorted(candidates.items(), key=lambda item: item[1], reverse=True))
print("投票结果(按得票数从多到少):")
for i, (name, votes) in enumerate(sorted_candidates.items()):
print(f"{i+1}. {name}: {votes} 票")
count_votes()
阅读全文