用Python模拟的zip?

2024-04-25 12:52:24 发布

您现在位置:Python中文网/ 问答频道 /正文

在Python中,Haskell的zipWith函数类似于什么?

zipWith :: (a -> b -> c) -> [a] -> [b] -> [c]

Tags: 函数haskellzipwith
3条回答

如果你愿意的话,你可以创建你的,但在Python中,我们主要是这样做的

list_c = [ f(a,b) for (a,b) in zip(list_a,list_b) ] 

因为Python本身不是功能性的。它恰好支持一些方便的习语。

map()

map(operator.add, [1, 2, 3], [3, 2, 1])

尽管通常使用带zip()的LC。

[x + y for (x, y) in zip([1, 2, 3], [3, 2, 1])]

您可以使用地图:

>>> x = [1,2,3,4]
>>> y = [4,3,2,1]
>>> map(lambda a, b: a**b, x, y)
[1, 8, 9, 4]

相关问题 更多 >

    热门问题