You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何基于成本重量比获取字典中的最大键(Python实现)

解决方案:找到每磅成本最高的商品总成本键

要解决这个问题,核心是计算每个商品的每磅成本(总成本 ÷ 重量),再找到对应这个值最大的字典键。用Python的max()函数结合key参数就能实现最简洁的Pythonic写法:

inventory = {60: 20, 100: 50, 120: 30}
# 用lambda表达式计算每个键对应的每磅成本,作为max的排序依据
max_key = max(inventory, key=lambda k: k / inventory[k])
print(max_key)  # 输出: 120

逻辑说明

  • inventory的键是总成本,值是重量,每磅成本为 键 / 值
  • max()的key参数接受一个匿名函数(lambda),该函数会对每个键计算对应的每磅成本,max会根据这个计算结果选出对应的键
  • 验证计算:60/20=3,100/50=2,120/30=4,显然120对应的每磅成本最高

额外处理:避免重量为0的异常

如果字典中可能存在重量为0的条目,需要加入判断避免除以零错误:

max_key = max(
    inventory,
    key=lambda k: k / inventory[k] if inventory[k] != 0 else -float('inf')
)

这里把重量为0的条目对应的每磅成本设为负无穷,确保不会被选中。

内容的提问来源于stack exchange,提问作者Pacool1234

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 16:15:31