clojure - 将此列表转换为集合向量
问题描述
有谁知道如何将此向量列表转换为集合向量?
([#{2}] [#{1 2 3 4}] [#{5}] [#{3}])
结果应该是
[#{2} #{1 2 3 4} #{5} #{3}]
解决方案
多种方法来实现这一点。这取决于您的需求,您使用什么方法:
(def data '([#{2}] [#{1 2 3 4}] [#{5}] [#{3}]))
;; If you have a list of single element lists:
(mapv first data) ;; => [#{2} #{1 2 3 4} #{5} #{3}]
;; If you have a list of multiple element lists:
(vec (apply concat data)) ;; => [#{2} #{1 2 3 4} #{5} #{3}]
;; If you also want to handle multiple levels of nesting:
(vec (flatten data)) ;; => [#{2} #{1 2 3 4} #{5} #{3}]
;; If you ..;
(transduce (map first) conj data) ;; => [#{2} #{1 2 3 4} #{5} #{3}]
推荐阅读
- python - 在 python 中实现 curl --resolve 标志
- excel - 在多个选择中复制多个范围
- jquery - 检测 jQuery 滚动的每个像素
- sql-server - 在 MSSQL 和 Entity Framework Core 中仅向表中添加新行的最有效方法
- php - Android - 如何将文件名添加到调用 PHP 文件的上传文件函数
- c++ - VSCode - 有红色下划线,但程序构建和运行正确,并且调试错误
- nginx - nginx - 如何读取位置指令中的文件?
- node.js - 以编程方式创建 Mongodb Atlas 触发器 | 节点
- r - 根据 R 中今天的值更改未来的所有值
- javascript - 作为道具传递时箭头函数未定义