删除3元素元组的第一个元素

时间:2011-11-30 09:06:35

标签: haskell functional-programming tuples

有没有办法删除3元素元组的第一个元素,所以我得到一个2元素元组而不必为此目的创建另一个函数?

  

(A,B,C) - >(B,C)

基本上我必须使用一个函数,它创建一个3元素元组,然后我必须使用一个只使用它的最后两个元素的函数。

感谢您的回答。

3 个答案:

答案 0 :(得分:11)

你的问题几乎本身就有所需的功能!

\(a,b,c)->(b,c)

是您需要的功能。它是一个动态定义的“匿名”函数,您无需为其命名。例如,如果你有

someFunc :: someType -> (Int, Char, Bool)

你可以做到

(\(a,b,c)->(b,c)) (someFunc someValue)

获取someFunc someValue的第二和第三个组件。

答案 1 :(得分:5)

您可以使用let等几种句法结构进行模式匹配。所以你可以这样做:

let (a, b, c) = triTuple in fn (b, c)

答案 2 :(得分:1)

您可以使用case

case x of (a, b, c) -> (b, c)