元组列表与第二个元素合并为一个列表

时间:2018-10-21 17:05:33

标签: list f# tuples list-comprehension

我正在尝试将元组(A * B)的列表转换为(B)的列表。我将如何处理?由于我最终试图从映射中获取第二个值,因此我首先将其转换为一个列表,但是由于我不需要它们,我正在努力从列表中删除第一个元素。

我有这样的东西:

map |> Map.toList

现在我想我必须使用List.filter,但是我看不到如何设置布尔表达式来从列表中逐出第1个值,因此使用秒值创建一个全新的列表可能更好。

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:2)

简单:

["a", 1; "b", 2] 
|> List.map snd 
|> printfn "%A"

另一种方式:

["a", 1; "b", 2] 
|> List.map (fun (a, b) -> b)
|> printfn "%A"

通过模块Map引用与List不同的类型的方式。 Map是不可变的Dictionaryhttps://msdn.microsoft.com/visualfsharpdocs/conceptual/collections.map%5b%27key%2c%27value%5d-class-%5bfsharp%5d