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

如何用Python递归函数计算两个等长列表同索引元素的和与差

Python递归实现等长列表同索引元素的和差计算

实现逻辑完全基于基础递归规则,没有用到复杂的内置函数,适合学习阶段参考:

  • 递归终止条件:当两个输入列表都为空时,返回两个空列表作为结果的收尾
  • 单次递归逻辑:每次取两个列表的第一个元素分别计算和与差,再对剩余的列表切片执行递归调用,最后把当前计算的结果拼接到递归返回的结果头部即可

完整实现代码

def calc_sum_diff(l1, l2):
    # 递归终止条件
    if not l1 and not l2:
        return [], []
    # 计算当前索引位置的和与差
    current_sum = l1[0] + l2[0]
    current_diff = l1[0] - l2[0]
    # 递归处理剩余元素
    rest_sum, rest_diff = calc_sum_diff(l1[1:], l2[1:])
    # 拼接当前结果和递归返回的剩余结果
    return [current_sum] + rest_sum, [current_diff] + rest_diff

# 示例调用
l1 = [1,2,3]
l2 = [7,8,9]
l3, l4 = calc_sum_diff(l1, l2)

# 输出结果
print("同索引元素求和结果:")
print(f"l3 = {l3}")
print("\n同索引元素求差结果:")
print(f"l4 = {l4}")

运行输出

同索引元素求和结果:
l3 = [8, 10, 12]

同索引元素求差结果:
l4 = [-6, -6, -6]

如果后续需要兼容长度不一致的列表,可在函数开头增加长度校验逻辑,不符合要求时直接抛出提示即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 20:09:02