Tôi đang tìm một cái gì đó tương tự như select-keys:Có một tiêu chuẩn func mà có một dict và một danh sách các phím và trả về danh sách các vals tương ứng?
(desired-fn {:a 1, :b 2, :c 3, :d 4} [:a :d])
;= [1 4]
;; N.B. the order of the keys in the argument seq is preserved
(= (desired-fn (array-map :a 1, :b 2, :c 3, :d 4)
[:b :c])
(desired-fn (array-map :d 4, :c 3, :a 1, :b 2)
[:b :c]))
;= true
Đó không phải là đặc biệt khó khăn để thực hiện, mặc dù tôi đã không cố gắng để đến với một tên tốt được nêu ra:
(defn select-values-corresponding-to-keys [m ks]
(for [k ks]
(get m k)))
Am I không biết gì về một chức năng tiêu chuẩn đáp ứng chính xác nhu cầu này? Nếu không, hãy làm các ngôn ngữ khác — ví dụ: Python, Ruby, Haskell— có tên cho hàm này không?
Có thể rõ ràng, có triển khai 'chuẩn' và đó là 'bản đồ'; bất kỳ câu trả lời 'map' nào ở trên đều đúng. 'map' được sử dụng theo cách đó là sự đồng bộ với bài viết của Jay gọi là' các giá trị lựa chọn'. –