dictionary - Clojure:使用多个键访问映射

标签 dictionary clojure key

我正在尝试使用我所说的“多个键”来访问我认为是“ map ”的内容,以提取多个(甚至可能是一些相同的)值。

这就是我正在尝试做的事情(尝试了很多变体,但不起作用):

(:a :b :c :b :a {:a "a" :b "b" :c "c"})

这是我想要或期望的回应:

"a" "b" "c" "b" "a"

有人知道怎么做吗?

谢谢。

最佳答案

这个有用吗? => 显示从我的 REPL 返回的内容。

(map {:a "a" :b "b" :c "c"} [:a :b :c :b :a])
=> ("a" "b" "c" "b" "a")

您还可以使用映射作为函数调用,仅供引用。

如果你想避免将键包装在集合中,你可以这样做:

(defn map-seq [m & ks]
  (map m ks))

(map-seq {:a "a" :b "b" :c "c"} :a :b :c :b :a)
=> ("a" "b" "c" "b" "a")

关于dictionary - Clojure:使用多个键访问映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25446120/

相关文章:

clojure - 使用 `case`中的 channel

clojure - 在映射列表内的映射中重新排序键

java - 查找 map 是否包含列表/可迭代中的任何键的有效方法

ios - 在对象数组的字典中应用过滤器

arrays - 如何在 Go 中创建一个 map[string] [2]int?

Clojure 函数文字

CouchDB View 返回带有复杂键的空行以进行日期数组比较

go - 无法在JetBrains的GoLand中获取大量代码

java - 为什么我的按键事件不起作用?

c++ - 将map <string,int>保存到文本文件