python - 比较字典中列表之间的整数
问题描述
我是 Python 新手,我正在尝试为游戏制作计算器。我想在列表(即字典中的值)和最大值来自的键之间的特定索引处获取最大整数。
我试图循环浏览字典。
raw_player_score = {'Matt' : [3, 5, 5, 4, 6, 9],
'Kyle' : [6, 9, 11, 5, 4, 3],
'Emily' : [4, 4, 5, 2, 1, 5]}
def extra_points(dict):
for k, v in dict.items():
for number in v:
apple_king = max(v[1])
print(apple_king)
final_dict = extra_points(raw_player_score)
我希望结果为 9,因为 Kevin 在索引 1 处的数字最高,但相反,我收到消息“'int' object is not iterable'
解决方案
其他答案中的所有建议都是正确的。我将提供一个更简单、老式的解决方案,它可以做最少的工作,无需创建任何额外的列表或进行任何排序。我认为作为一个新的 Python 程序员,最直接和透明的方法可能会为您提供最好的服务:
raw_player_scores = {'Matt' : [3, 5, 5, 4, 6, 9],
'Kyle' : [6, 9, 11, 5, 4, 3,],
'Emily' : [4, 4, 5, 2, 1, 5]}
def extra_points(scores, pos):
max_score = 0
max_key = None
for k, v in scores.items():
if v[pos] > max_score:
max_score = v[pos]
max_key = k
return max_key
max_key = extra_points(raw_player_scores, 1)
print(max_key)
结果:
Kyle
推荐阅读
- python - 熊猫根据两列值选择行
- python - 用 Python 控制 Thorlabs KDC 101 立方体
- python - 如何将垂直矩形添加到子图
- google-apps-script - 如何在 Google 表格中查找和编辑重复项
- javascript - 检查python中一个字典中的键是否
- python - 训练一个 CNN 不兼容的 Shapes
- android - CustomView画布图像未设置android
- angular - 如何在不使用 setInterval() 的情况下以角度显示当前时间
- node.js - AWS Lambda 处理程序类型错误:回调必须是一个函数(如果提供)
- scala - 如何使用 spark-scala 在 spark 数据帧上执行枢轴?