2016-05-31 96 views
0

如何通過列表來匹配值?在我來說,我有一個顏色列表 -如何通過集合進行綁定?

["Black", "Lavender", "Brazen", "Army", "Birch"] 

我有這個功能,創建顏色名稱的集合和相關網址:

(combine-color-imgurl get-product-images) 
=> 
[("Black" 
    "example.com/WWbNhro1n3YfmQTx1q5Piv1j8lZzse6M-25_2a353315-9965-457f-83f8-32af89f3b067.jpeg") 
("Lavender" 
    "example.com/trWCTNYNOfiA8EBX9HZcxVB1Hg8pVtr9-25_403cbe3e-9894-4ad6-9f69-dedcfd7ef77b.jpeg") 
("Brazen" 
    "example.com/COYrBHEsiOgdeOfxsQGcw8XXynsVdpxy-25_af0a9ff9-b988-467e-9b39-c4ae572420e8.jpeg") 
("Army" 
    "example.com/YWKhJXFM0dKhJuRXphCXD4TWstnZRRJm-25_b3a2e43c-3c8c-4abc-83d2-d00d9b3ed594.jpeg") 
("Birch" 
    "example.com/IRsHVjavdFsybvmpT6xjnpKqMtjyjeoZ-25_6321e4ef-5bed-463f-990a-1857151b8a11.jpeg")] 

我不完全知道如何獲得只有與顏色相關的網址。

因此函數會像

(defn get-url [color] 
    (some-operation (combine-color-imgurl get-product-images))) 

=> URL 
+2

如果您的'combine-color-imgurl'函數返回了一個映射而不是一個列表向量,只要有'color'(例如'(colors-urls color)'''就可以獲得'url' 'colors-urls'是由'combine-color-imgurl'返回的地圖)。 –

+0

有一位朋友幫助我 - 他做到了! –

回答

2

正如娟提到的,解決辦法是有combine-color-imgurl返回一個地圖,然後使用

(get (into {} (combine-color-imgurl get-product-images)) color) 

得到的URL。

相關問題