迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Python >

用 Python 将两个列表相乘

作者:迹忆客 最近更新:2023/12/17 浏览次数:

本教程将演示在 Python 中执行两个列表元素相乘的各种方法。假设我们有两个维度相同的整数列表,我们想将第一个列表中的元素与第二个列表中相同位置的元素相乘,得到一个维度相同的结果列表。


在 Python 中使用 zip() 方法将两个列表相乘

在 Python 中内置的 zip() 方法接受一个或多个可迭代对象并将可迭代对象聚合成一个元组。像列表 [1,2,3][4,5,6] 将变成 [(1, 4), (2, 5), (3, 6)]。使用 map() 方法,我们按元素访问两个列表,并使用列表推导方法得到所需的列表。

下面的代码示例展示了如何使用 zip() 与列表推导式来复用 1D 和 2D 列表。

list1 = [2, 4, 5, 3, 5, 4]
list2 = [4, 1, 2, 9, 7, 5]
product = [x * y for x, y in zip(list1, list2)]
print(product)

输出:

[8, 4, 10, 27, 35, 20]

2D 列表的乘法:

list1 = [[2, 4, 5], [3, 5, 4]]
list2 = [[4, 1, 2], [9, 7, 5]]
product = [[0] * 3] * 2

for x in range(len(list1)):
    product[x] = [a * b for a, b in zip(list1[x], list2[x])]

print(product)

输出:

[[8, 4, 10], [27, 35, 20]]

在 Python 中使用 numpy.multiply() 方法对两个列表进行乘法

Python 中 NumPy 库的 multiply() 方法,将两个数组/列表作为输入,进行元素乘法后返回一个数组/列表。这个方法很直接,因为我们不需要为二维乘法做任何额外的工作,但是这个方法的缺点是没有 NumPy 库就不能使用。

下面的代码示例演示了如何在 Python 中使用 numpy.multiply() 方法对 1D 和 2D 列表进行乘法。

  • 1D 乘法:
import numpy as np

list1 = [12, 3, 1, 2, 3, 1]
list2 = [13, 2, 3, 5, 3, 4]

product = np.multiply(list1, list2)
print(product)

输出:

[156   6   3  10   9   4]
  • 2D 乘法:
import numpy as np

list1 = [[12, 3, 1], [2, 3, 1]]
list2 = [[13, 2, 3], [5, 3, 4]]

product = np.multiply(list1, list2)
print(product)

输出:

[[156   6   3]
 [ 10   9   4]]

在 Python 中使用 map() 函数将两个列表相乘

map 函数接收一个函数和一个或多个迭代数作为输入,并返回一个迭代数,将所提供的函数应用于输入列表。

我们可以在 Python 中使用 map() 函数,通过将两个列表作为参数传递给 map() 函数,对两个列表进行 1D 和 2D 元素乘法。下面的代码示例演示了我们如何使用 map() 对两个 Python 列表进行乘法。

一维乘法的示例代码:

list1 = [2, 4, 5, 3, 5, 4]
list2 = [4, 1, 2, 9, 7, 5]
product = list(map(lambda x, y: x * y, list1, list2))
print(product)

输出:

[8, 4, 10, 27, 35, 20]

2D 乘法的示例代码:

list1 = [[2, 4, 5], [3, 5, 4]]
list2 = [[4, 1, 2], [9, 7, 5]]
product = [[0] * 3] * 2

for x in range(len(list1)):
    product[x] = list(map(lambda a, b: a * b, list1[x], list2[x]))

print(product)

输出:

[[8, 4, 10], [27, 35, 20]]

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

如何在 Python 中查找列表中的最大值

发布时间:2023/12/18 浏览次数:192 分类:Python

它演示了如何在 Python 中寻找列表中的最大值。本教程将涵盖一些场景和数据类型,从简单的整数列表到更复杂的结构,如数组中的数组。

用 Python 将两个列表转换为字典

发布时间:2023/12/18 浏览次数:91 分类:Python

它演示了如何在 Python 中把列表转换成字典。本教程将介绍如何在 Python 中把两个列表转换为字典,其中一个列表包含字典的键,另一个包含值。

在 Python 中查找列表中的字符串

发布时间:2023/12/18 浏览次数:110 分类:Python

本教程演示了如何在 Python 中查找具有特定子字符串的元素。我们将使用下面的列表并提取其中有 ack 的字符串。my_list = ["Jack", "Mack", "Jay", "Mark"]

在 Python 中检查列表是否相等

发布时间:2023/12/18 浏览次数:85 分类:Python

本教程演示了如何在 Python 中检查两个列表是否相同或相等。在本教程中,我们将研究检查 Python 中两个列表是否相等的各种方法。

Python 中的字典数组或列表

发布时间:2023/12/18 浏览次数:125 分类:Python

本教程演示了如何在 Python 中创建字典数组。Python 中的字典以键值对的形式构成一组元素。列表可以在一个公共名称和特定索引下存储不同类型的元素。

检查索引是否存在于 Python 列表中

发布时间:2023/12/18 浏览次数:185 分类:Python

本教程演示了使用列表范围和 IndexError 异常检查 Python 列表中是否存在索引。我们将介绍两种使用列表范围和 IndexError 异常检查列表索引是否存在的方法。

在 Python 中对数字列表进行归一化

发布时间:2023/12/18 浏览次数:50 分类:Python

本教程演示如何归一化 python 中的数字列表。归一化意味着将给定的数据转换为另一个尺度。我们重新调整数据,使其介于两个值之间。

如何在 Python 中创建具有特定大小的列表

发布时间:2023/12/18 浏览次数:178 分类:Python

本教程介绍了如何在 Python 中创建具有特定大小的列表。当程序员提前知道元素数量时,为列表或数组预分配存储空间是程序员经常用地方式。

在 Python 中的列表中删除多个元素

发布时间:2023/12/18 浏览次数:188 分类:Python

我们可以使用 if...else 控制语句、列表推导式、列表切片和 for 循环从 Python 中的列表中删除多个元素。要从 Python 列表中删除多个值,我们可以删除列表的实际值或要从列表中删除的值的索引。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便