用Python编写程序创建一字典,通过键盘,依次输入进球球员姓名及其进球数 ,直到输入进球球员姓名为 'None',进球数为0,则结束本次数据录入。同时将输入的球员和进 数加入字典中,最后输出该项足球比赛的球员字典和金靴奖得主(不考虑相同的进球数)
时间: 2024-03-03 07:48:23 浏览: 100
python的字典生成
好的,我可以帮你解决这个问题。下面是代码实现:
```python
player_dict = {} # 定义一个字典存储球员和进球数
while True:
name = input("请输入进球球员姓名:")
if name == "None":
break
goals = int(input("请输入进球数:"))
if goals == 0:
break
if name not in player_dict:
player_dict[name] = goals
else:
player_dict[name] += goals
# 找出金靴奖得主
max_goal = max(player_dict.values())
best_player = [k for k, v in player_dict.items() if v == max_goal]
# 输出球员字典和金靴奖得主
print("球员字典:", player_dict)
print("金靴奖得主:", best_player)
```
代码实现思路如下:
1. 定义空字典 `player_dict` 用来存储球员和进球数。
2. 通过 `while` 循环依次输入进球球员姓名和进球数,当输入的姓名为 `"None"` 或进球数为 `0` 时,退出循环。
3. 判断输入的球员是否已经在字典中,如果不在则将球员和进球数加入字典,否则将进球数累加到原来的值上。
4. 使用 `max` 函数找出字典中进球最多的值,再使用列表推导式找出所有进球数等于最大值的球员,即为金靴奖得主。
5. 最后输出球员字典和金靴奖得主。
希望这个代码可以帮到你!
阅读全文