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

如何实现两个列表的带加法运算交叉连接?

实现两个列表的加法交叉连接

Got it,你要的其实是把list1里的每个元素依次和list2的所有元素相加,然后按顺序收集结果对吧?本质就是笛卡尔积形式的元素相加,下面给你几种Python实现方式,都能得到你要的输出:

方法1:嵌套循环(最直观,适合新手理解)

这是最容易看懂的写法,两层循环遍历两个列表,把每对元素的和追加到结果列表里:

list1 = [5,2,8]
list2 = [11,6,3]
sum_list = []

# 先遍历list1的每个元素
for num1 in list1:
    # 再遍历list2的每个元素,和当前num1相加
    for num2 in list2:
        sum_list.append(num1 + num2)

print(sum_list)  # 输出: [16,11,8,13,8,5,19,14,11]

方法2:列表推导式(简洁Pythonic写法)

Python里可以用列表推导式把嵌套循环浓缩成一行,效率和循环一样,但代码更紧凑:

list1 = [5,2,8]
list2 = [11,6,3]
sum_list = [num1 + num2 for num1 in list1 for num2 in list2]

print(sum_list)  # 同样得到预期结果

方法3:用itertools.product(处理复杂笛卡尔积更方便)

如果以后需要处理更多列表的交叉运算,itertools.product可以帮你生成所有元素对,再对每对求和:

from itertools import product

list1 = [5,2,8]
list2 = [11,6,3]
# product(list1, list2)会生成所有(5,11),(5,6),(5,3),(2,11)...这样的元组
sum_list = [a + b for a, b in product(list1, list2)]

print(sum_list)

这三种方法都能完美得到你想要的输出,选哪种看你的代码场景和个人习惯就行~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.28 21:07:41