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

Python实现:一行代码计算两个整数列表的平均绝对差

一行代码实现平均绝对差计算

没问题!咱们可以利用Python的生成器表达式和内置函数,把你的多行函数压缩成一行,同时保持逻辑清晰:

def avg_diff(a, b): return sum(abs(x - y) for x, y in zip(a, b)) / len(a)

解释一下这行代码的逻辑:

  • zip(a, b):把两个列表的对应索引元素配对,和你原来的for x, y in zip(a, b)作用完全一致
  • abs(x - y) for x, y in zip(a, b):生成器表达式,逐个计算每对元素的绝对差
  • sum(...):直接对所有绝对差求和,替代了原来的循环累加操作
  • 最后除以len(a)(题目明确两个列表长度相同,用len(b)也可以)得到平均值

用你给出的测试例子验证一下:
输入a = [1, 2, 3, 4],b = [1, 1, 1, 1],计算过程是sum(0,1,2,3) /4 =6/4=1.5,完全符合预期结果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.22 08:22:15