我有一个向量[:a :b :c :d :e]
和一些索引[1 2 4]
。
使用Spectre,如何从索引中选择向量的元素,以便其返回[:b :c :e]
?
答案 0 :(得分:4)
无需使用Spectre:
(let [a [:a :b :c :d :e]
B [1 2 4]]
(mapv (partial nth a) B))
或更简单:
(let [a [:a :b :c :d :e]
B [1 2 4]]
(mapv a B))
但是,如果您坚持使用Spectre,那么这里是:
(let [a [:a :b :c :d :e]
B [1 2 4]]
(select (apply multi-path B) a))