利用循环实现两个列表相乘
使用zip()方法在Python中实现两个列表相乘
使用numpy.multiply()方法在Python中实现两个列表相乘
使用map()函数在Python中实现两个列表相乘
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)
输出结果:
list1: [1, 3, 5, 7, 9]
list2: [2, 4, 6, 8, 10]
list3: [2, 12, 30, 56, 90]
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)
输出结果:
list1: [1, 3, 5]
list2: [2, 4, 6, 8, 10]
[2, 12, 30]
在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)
输出结果:
list1: [1, 3, 5, 7, 9]
list2: [2, 4, 6, 8, 10]
[ 2 12 30 56 90]
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)
输出结果:
list1: [1, 3, 5, 7, 9]
list2: [2, 4, 6, 8, 10]
[2, 12, 30, 56, 90]