[python]:使用func和两个不同维度的列表传递map()时出现问题
假设我有一张清单,比如说[python]:使用func和两个不同维度的列表传递map()时出现问题,python,map,Python,Map,假设我有一张清单,比如说 lst1 = [1,2,3,4] lst2 = [8,9] 还有另一张单子,比如说 lst1 = [1,2,3,4] lst2 = [8,9] 还有一个func,比如说 func = lambda x,y: x+y 我想做的是生成一个列表,其元素是lst1的元素和lst2的元素之和。 i、 我想用lst1和lst2生成一个lst,lst应该是 [1+8+9, 2+8+9, 3+8+9, 4+8+9]. 如何使用map()执行此操作?您的函数只是添加运算符,因
lst1 = [1,2,3,4]
lst2 = [8,9]
还有另一张单子,比如说
lst1 = [1,2,3,4]
lst2 = [8,9]
还有一个func,比如说
func = lambda x,y: x+y
我想做的是生成一个列表,其元素是lst1的元素和lst2的元素之和。
i、 我想用lst1和lst2生成一个lst,lst应该是
[1+8+9, 2+8+9, 3+8+9, 4+8+9].
如何使用map()执行此操作?您的函数只是添加运算符,因此您可以通过以下方式使用运算符模块中的“添加”:
from operator import add
lst = [1,2,3,4]
sLst = [8,9]
map(lambda x: add(x, sum(sLst)), lst)
>>> [18,19,20,21]
使用map是可以的,但通常没有简单的列表理解那么快,而且看起来也很清楚:
from operator import add
lst = [1,2,3,4]
sLst = [8,9]
[add(x, sum(sLst)) for x in lst]
>>> [18,19,20,21]
为什么要使用
map()
?@Synapse:yourfunc
与这里的任何东西有什么关系?它应该用在什么地方吗?@Gerrat:不,我只是想证明我的问题。