在 Python 中执行逐元素加法


我们将通过示例介绍在 Python 中按元素添加两个列表的不同方法。


Python 中的逐元素加法

在 Python 中使用列表时,在某些情况下,我们可能需要按元素添加两个列表。 Python 为各种问题提供了解决方案。

可以使用三种方法按元素添加两个列表。 我们将在以下部分中通过代码示例详细解释这些方法。


在 Python 中使用 zip() 函数执行逐元素加法

zip() 函数提供了将两个列表相加的功能。 在这个函数中,我们可以按元素添加两个列表。

显示两个元组之和的元组显示与元组 1 和元组 2 相同的元素。

zip() 函数的使用步骤如下。

  1. 我们将创建两个列表并将它们传递给 zip() 函数。
  2. 然后,我们将遍历两个列表中的每个元素。
  3. 我们将为每次迭代放置 sum() 函数,如下所示。
    示例代码:
# python
firstList = (1,2,9,8,99,89)
secondList = (14,24,56,38,97,11)

additionList =[sum(element) for element in zip(firstList ,secondList)]

print(additionList)

输出:

在 Python 中使用 zip() 进行逐元素加法

从上面的示例可以看出,它添加了 firstList 和 secondList 元素,并提供了一个显示两个列表之和的新列表。

根据索引位置,两个列表元素都添加到上述函数中。 它创建值并将其存储在新列表中。


在 Python 中使用 map() 函数执行逐元素加法

map() 是 Python 中的另一个函数,用于汇总一个或两个可迭代对象。 它接受一个返回函数并将一个或多个可迭代对象作为输入并对其进行处理以提供一个新的元组或包含两个元组之和的集合。

它基于各自列表中元素的索引对所有可迭代对象起作用。 每次迭代都会选择一个元素并将其传递给返回函数,在本例中,返回函数是一次只返回一个表达式的 lambda 函数。

返回函数的值或元素存储在地图类的对象中并转换为线性值。

map() 函数的工作方式如下。

  1. 值被传递给 lambda 函数或返回函数。 它接受两个输入并给出这些值的总和。
  2. 然后 map() 函数将两个列表一起迭代,这样在第一次运行时,它会捕获 1 和 14,然后 lambda 函数开始工作,并获得总和,即 15。
  3. 然后,在第二步,它会抓到 2 和 24; 经过lambda函数后,得到和,即26。

这个过程一直持续到每个元组中的所有元素都加起来为止,如下所示。

示例代码:

# python
firstList = (1,2,9,8,99,89)
secondList = (14,24,56,38,97,11)

additionList= list(map (lambda x,y :x+y,firstList ,secondList ))

print(additionList)

输出:

在 Python 中使用 map() 进行逐元素加法

如您所见,它添加了 firstList 和 secondList 元素并提供了一个显示两个列表之和的新列表。 在上面的函数中,两个列表元素都是根据索引位置添加的,它创建并将值存储在一个新列表中。


在 Python 中使用 NumPy 执行逐元素加法

我们还可以使用 NumPy 按元素添加两个列表中的元素。 NumPy 可以处理复数。

它是标准的三角函数。 在添加的情况下应用不同的操作后,它会将列表转换为 NumPy 数组,然后再次将此 NumPy 数组转换为列表。

让我们通过一个示例来实现我们在上述示例中使用的相同场景。 首先,我们将使用显示的以下命令安装 NumPy。

# python
pip install numpy

如下所示,我们将在我们的程序中导入它,并使用它来执行两个列表的逐元素相加。

示例代码:

# python
import numpy as np

firstList = (1,2,9,8,99,89)
secondList = (14,24,56,38,97,11)

additionList= list (np.array (firstList)+np.array(secondList))

print(additionList)

输出:

在 Python 中使用 NumPy 进行逐元素加法

我们可以使用上面示例中的 NumPy 轻松地在两个列表之间进行逐元素加法。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

迹忆客

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值