json - clojure循环json数据

标签 json loops clojure

我在循环解析 json 数据时遇到问题。我是 clojure 初学者,需要一些循环 json 数据的提示。

数据如下所示:

{"photoset" {"primary" "8455893107", "total" "2", "pages" 1, "perpage" 500, "page" 1, 
"per_page" 500, "photo" 

[{"id" "8455893107", "secret" "1a3236df06", "server" "8087", 
 "farm" 9, "title" "IMG_0137", "isprimary" "1"} 

{"id" "8469482476", "secret" "4c1bf59214",
 "server" "8235", "farm" 9, "title" "HippieBus", "isprimary" "0"}]

, "owner" 
 "93029076@N07", "id" "72157632724688181", "ownername" "clojureB5"}, "stat" "ok"}

我想要做的是循环遍历这两张照片并使用 id 和农场值构建一个新的 url,如 http://www.flickr.com/farm/id

我知道我可以获得这样的一个值:

(-> (get-in (cheshire.core/parse-string (:body picList)) ["photoset" "photo"]) first (get "id"))

但是我现在可以循环播放它吗?

最佳答案

您可以简单地使用 map

(->> (get-in data ["photoset" "photo"])
     (map #(str "http://www.flickr.com/" (get % "farm") "/" (get % "id"))))

它将产生以下列表:

("http://www.flickr.com/9/8455893107" "http://www.flickr.com/9/8469482476")

关于json - clojure循环json数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14855324/

相关文章:

linux - Clojure + Linux + Ext4 + 将字符串编码为文件名

python - flask_json 扩展是否支持顶级数组 JSON 响应?

Python 和 Json

arrays - JSON 与数组中的字典

ios - 将 JSON 对象传递到 TabBarViewController

python - 为什么字符串不变成整数?

php - JavaScript 函数中唯一 ID 的变量

clojure - 处理子 lambda 失败

Python for循环从2开始到10然后覆盖0和1

interface - 在 Clojure 中实现一个带有可变数量 args 的 Java 接口(interface)方法