程序员文章、书籍推荐和程序员创业信息与资源分享平台

网站首页 > 技术文章 正文

一文了解在Python中实现两个列表相乘的多种方法

hfteth 2024-12-15 12:13:33 技术文章 47 ℃

在本教程中,我们将学习如何在Python中实现两个列表数值元素相乘,得到一个新的列表。

  • 利用循环实现两个列表相乘
  • 使用zip()方法在Python中实现两个列表相乘
  • 使用numpy.multiply()方法在Python中实现两个列表相乘
  • 使用map()函数在Python中实现两个列表相乘

1、利用循环实现两个列表相乘

for循环遍历两个列表元素,乘积结果使用append添加到一个空列表。

list1=[1,3,5,7,9]
list2=[2,4,6,8,10]

print("list1:",list1)
print("list2:",list2)

list3=[]

for i in range(0, len(list1)):
    list3.append(list1[i]*list2[i])
print("list3:",list3)

2、使用zip()方法在Python中实现两个列表相乘

zip()是Python的一个内置函数,参数为可迭代的对象,将对象中对应的元素打包成一个个元组,然后返回列表。若参数的长度不等,则返回长度和参数中长度最短的对象相同。

list1=[1,3,5,]
list2=[2,4,6,8,10]

print("list1:",list1)
print("list2:",list2)

list3=[x*y for x,y in zip(list1,list2)]
print(list3)

3、使用numpy.multiply()方法在Python中实现两个列表相乘

使用numpy库中的multiply()函数,直接实现两个列表相乘

import numpy as np
list1=[1,3,5,7,9]
list2=[2,4,6,8,10]

print("list1:",list1)
print("list2:",list2)

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


4、使用map()函数在Python中实现两个列表相乘

lambda匿名函数实现两个数相乘

cheng=lambda x,y: x*y
print(cheng(2,3))

#输出
6

map()会根据提供的函数对指定序列做映射。

list1=[1,3,5,7,9]
list2=[2,4,6,8,10]
print("list1:",list1)
print("list2:",list2)
list3= list(map(lambda x,y: x*y ,list1,list2))
print(list3)

感谢阅读,关注我,精彩继续!

Tags:

最近发表
标签列表