F#过滤列表(新手)

时间:2015-02-14 22:13:18

标签: f#

我最近刚接触f#所以请耐心等待。我遇到的问题是我试图只显示列表的yo部分但不确定编码例如

int * int * float * float * int * float * float =

但只想要

int * int

任何帮助将不胜感激

2 个答案:

答案 0 :(得分:1)

所以一种方式是

l |> List.map (fun (a,b,_,_,_,_,_) -> (a,b))

答案 1 :(得分:1)

您提供的示例:

int * int * float * float * int * float * float 

是元组的签名。这意味着您的元组按签名中指定的顺序有7个floatint类型的项目。所以它的一个例子是:

let myTuple = (2, 4, 6.0, 8.0, 10, 12.0, 14.0)

您可以创建一个函数来提取前两个项目并忽略其余项目。

let frstAndScd (a, b, _, _, _, _, _) = (a, b)

下划线表示您对这些项目不感兴趣。你只需要用字母标记并将它们作为新元组返回。