方法1:
使用 operator.add() 方法和列表调用 map() 函数。此种写法需要从 operator 模块导入 add() 方法。operator.add 方法与 a + b 相同,所以仅适合两个列表使用,而且得到的结果还需要使用 list() 类将 map 对象转换为列表。
from operator import add
list1 = [1, 2, 3]
list2 = [4, 5, 6]
list3 = list(map(add, list1, list2))
print(list3)
运行结果:
方法2:
使用zip函数并行迭代多个可迭代对象,使对应的对象生成一个元组,然后将每个元组传递给sum()函数获得总和。这种方法适合两个或两个以上的列表。
①两个列表:
list1 = [1, 2, 3]
list2 = [4, 5, 6]
list3 = list(zip(list1, list2))
print(list3) # ==print(list(zip(list1, list2)))
list_3 = [sum(tup) for tup in zip(list1, list2)]
print(list_3)
运行结果:
以此类推,多个列表时也是一样的写法。
②3个列表:
list1 = [1, 2, 3]
list2 = [4, 5, 6]
list3 = [7, 8, 9]
list4 = list(zip(list1, list2, list3))
print(list4)
运行结果:
以上为个人学习总结,仅限交流和分享,后续有补充仍会继续更新。