我正在尝试将元组(A * B)的列表转换为(B)的列表。我将如何处理?由于我最终试图从映射中获取第二个值,因此我首先将其转换为一个列表,但是由于我不需要它们,我正在努力从列表中删除第一个元素。
我有这样的东西:
map |> Map.toList
现在我想我必须使用List.filter,但是我看不到如何设置布尔表达式来从列表中逐出第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
是不可变的Dictionary
:https://msdn.microsoft.com/visualfsharpdocs/conceptual/collections.map%5b%27key%2c%27value%5d-class-%5bfsharp%5d