多人对若干个候选人投票python
时间: 2023-06-14 10:03:52 浏览: 107
可以使用Python中的字典和循环来实现多人对候选人投票的功能。以下是一个简单的示例代码:
```python
candidates = ["候选人A", "候选人B", "候选人C"] # 候选人列表
votes = {} # 创建一个空字典来存储投票结果
# 循环获取每个投票者的选票
while True:
voter = input("请输入投票者名称(输入exit退出):")
if voter == "exit":
break
print("请投票:")
for i, candidate in enumerate(candidates):
print(f"{i+1}. {candidate}")
vote = input()
# 确保投票合法
while True:
if vote.isdigit() and int(vote) in range(1, len(candidates)+1):
break
print("非法选票,请重新输入:")
vote = input()
# 将选票加入投票结果中
candidate_index = int(vote) - 1
candidate = candidates[candidate_index]
if candidate in votes:
votes[candidate] += 1
else:
votes[candidate] = 1
# 输出投票结果
print("投票结果:")
for candidate, vote_count in votes.items():
print(f"{candidate}: {vote_count} 票")
```
以上代码中,首先我们定义了一个候选人列表`candidates`和一个空字典`votes`用于存储投票结果。然后通过一个无限循环,获取每个投票者的名称和选票。为了确保选票的合法性,我们通过循环来要求投票者输入合法的选票,直到输入合法为止。最后将选票加入投票结果中,并在投票结束后输出投票结果。