2013-02-24 74 views
-3

我該如何操縱下面的int *字符串列表來獲取列表中的「string」部分作爲我的輸出?int * string list fsharp

let item =[ 
(12,"sausages"); 
(3,"chips"); 
(5,"burger"); 
(19,"cheese"); 
(24,"milk"); 
(44,"eggs"); 
] 

我開始使用listfilter。有人可以建議如何正確過濾嗎?

+2

顯示我們'List.filter'你的代碼,它是怎麼回事錯... – 2013-02-24 22:56:02

回答

7

簡單的方法:

item |> List.map snd 
+0

這仍然返回一個int *字符串列表。我只是想自己的話。這可能嗎? – user2093122 2013-02-24 23:05:05

+2

不,它不會 - 它返回一個「字符串列表」。把它放到F#interactive或tryfsharp.org中,你會看到。 – 2013-02-24 23:15:53

+0

@ user2093122 - 這是不正確的。請發佈您正在運行的所有代碼 – 2013-02-25 00:05:41

1
item |> List.map (fun (_, y) -> y) 
+0

這只是返回一個int *字符串列表 – user2093122 2013-02-24 23:02:58

+0

不,它不是」 t: > item |> List.map(fun(_,y) - > y);; val it:string list = [「sausages」; 「碼片」; 「漢堡包」; 「起司」; 「牛奶」; 「蛋」] – rkrahl 2013-02-24 23:04:05

+0

這就是我得到的 val item:(int * string)list = [(12,「sausages」); (3,「籌碼」); (5,「漢堡」); (19,「奶酪」); (24,「牛奶」); (44,「eggs」)] – user2093122 2013-02-24 23:07:21