我最喜欢的方式是
mul在两个列表上映射运算符:
from operator import mulmul(2, 5)#>>> 10mul(3, 6)#>>> 18map(mul, [1, 2, 3, 4, 5], [6, 7, 8, 9, 10])#>>> <map object at 0x7fc424916f50>
map,至少在Python 3中,返回生成器。因此,如果您想要一个列表,则应将其转换为一个:
list(map(mul, [1, 2, 3, 4, 5], [6, 7, 8, 9, 10]))#>>> [6, 14, 24, 36, 50]
但是到那时,对
zip‘d列表使用列表理解可能更有意义。
[a*b for a, b in zip([1, 2, 3, 4, 5], [6, 7, 8, 9, 10])]#>>> [6, 14, 24, 36, 50]
为了解释最后一个,
zip([a,b,c], [x,y,z])给出(一个生成器)
[(a,x),(b,y),(c,z)]。
将
for a, b in每
(m,n)对“解包”到变量
a和中
b,并将
a*b它们相乘。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)