将三个列表转换为Haskell中的三元组列表

use*_*936 1 haskell tuples list

我知道拉链是用双绞线做的,但是我不认为有三重奏的功能呢?我怎么做一个?或者如果不这样做,我如何依次将第三个列表的每个成员添加到每个对中,从而制作三元组列表?

wit*_*wit 8

尝试使用Hoogle:

前奏中的一些功能:

zip3 :: [a] -> [b] -> [c] -> [(a, b, c)]
Run Code Online (Sandbox Code Playgroud)

顺便说一下,还原功能存在:

unzip :: [(a, b)] -> ([a], [b])

unzip3 :: [(a, b, c)] -> ([a], [b], [c])
Run Code Online (Sandbox Code Playgroud)

如果需要currying,我们可以添加

uncurry3 f (x, y, z) = f x y z

uncurry3 zip3 :: ([a], [b], [c]) -> [(a, b, c)]
Run Code Online (Sandbox Code Playgroud)