我試圖讓一個元組列表以一種特定的方式存儲一些信息。如scotland
屬於uk
,england
屬於uk
,等於是兩個字符串作爲參數(String -> String -> Bool
)做出這樣的:Haskell:如何比較元組?
Main> owns "china" "beijing"
True
Main> owns "uk" "beijing"
False
這裏是我的代碼:
lst = [("uk","scotland"),("uk","england"),("uk","wales"),("china","beijing"),("china","hongkong"),("china","shanghai")]
owns :: String -> String -> Bool
owns a b = [n|(a,b) <- lst, (n == a)] && [m|(a,b) <- lst, (m==b]
感謝您的幫助。
@user notice'lookup'只返回第一個匹配項,所以這不適合您的需要。 FUZxxl有一個很簡單的構造元組並使用'elem'作爲查詢的好方法。 – 2011-04-13 20:20:37