haskell - Haskell 中的二进制映射

标签 haskell

Haskell 中是否有一个等价于 map 的双操作数,其类型签名为:

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

以下等价应成立:

map2 operator as bs === [operator a b | (a, b) <- zip as bs]

示例:

ghci> map2 (*) [2,3] [4,5]
[8,15]

最佳答案

函数zipWith做你需要的。还有 zipWith3 .. zipWith7 用于超过两个列表的情况。

关于haskell - Haskell 中的二进制映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19843589/

相关文章:

winapi - 创建一个基于 MSHTML 的简约窗口

haskell - 如何定义 listTree 使其在线性时间内运行?

windows - 如何在 Windows 7 中正确安装 Cabal 1.18.02?

debugging - Erlang 是否有与 HLint 等价的工具?

haskell - 我如何使用 haskell 检查列表是否包含元组中的值

haskell - 尝试在 haskell 中将列表相乘

haskell - 如何为该函数编写类型声明?

haskell - 使用 Control.Lens 组合镜头,其中必须调用中间函数

optimization - GHC真的可以永远inline map、scanl、foldr等吗?

haskell - 为什么使用 UNPACK 和严格标记记录字段很常见?