Clojure:将 pairs/n-tuples 列表转换为列表的 n 元组
Clojure: transform list of pairs/n-tuples into n-tuple of lists
给定一个 n 元组列表,
[[1, "a"], [2, "b"], [3, "c"]]
我想获得
[[1, 2, 3]["a", "b", "c"]]
我认为这可能作为 std 中的一个函数提供。库,就像在 python zip(*lst)
中一样。但是很遗憾没找到。
否则我想我可以想出一个使用 reduce 等的实现。但我更喜欢标准的 clojure 函数:)
(apply map vector [[1, "a"], [2, "b"], [3, "c"]])
如果你需要一个向量,你可以使用 mapv
:
(apply mapv vector [[1, "a"], [2, "b"], [3, "c"]])
给定一个 n 元组列表,
[[1, "a"], [2, "b"], [3, "c"]]
我想获得
[[1, 2, 3]["a", "b", "c"]]
我认为这可能作为 std 中的一个函数提供。库,就像在 python zip(*lst)
中一样。但是很遗憾没找到。
否则我想我可以想出一个使用 reduce 等的实现。但我更喜欢标准的 clojure 函数:)
(apply map vector [[1, "a"], [2, "b"], [3, "c"]])
如果你需要一个向量,你可以使用 mapv
:
(apply mapv vector [[1, "a"], [2, "b"], [3, "c"]])