動機
いずれJuliaでWebアプリを作るから
PythonでJSONを扱うことが多いので、Juliaでもやりたくなったから
目標
JuliaでJSON操作
作業環境
今回の環境(前回と同様)
julia> versioninfo() Julia Version 1.1.0 ...
JSONをパース
(v1.1) pkg>add JSON julia> edit("json_parse.jl")
json_parse.jlが作成され、エディタが自動で開くので、次のように編集
using JSON first_json = """{ "key":"value", "number":8, "array":[2,3,5,7,11], "dict":{"k1":"val1","k2":2} }""" print(first_json) print("JSONパースしてみる") print(JSON.parse(first_json))
シェルで実行
shell> julia json_parse.jl { "key":"value", "number":8, "array":[2,3,5,7,11], "dict":{"k1":"val1","k2":2} }JSONパースしてみるDict{String,Any}("key"=>"value","dict"=>Dict{String,Any}("k1"=>"val1","k2"=>2),"number"=>8,"array"=>Any[2, 3, 5, 7, 11])
Dict{String,Any}→JSONなのでkeyはString
辞書型をJSONに変換,JSONファイルの作成
lets_make_json.jlを次の様に決めて実行すると
using JSON see_json_key = Dict{Int64,Union{Int64,String}}(1=>"text", 2=>"hello",3=>1111) print(JSON.json(see_json_key)) f = open("hello.json", "w") #hello.jsonを作成 JSON.print(f, see_json_key) #hello.jsonにsee_json_keyを書き込む close(f) #閉じる
1.keyがStringに勝手になっていること
2.hello.jsonが作成され,書き込みが出来ていること
の2つを確認する
shell> julia lets_make_json.jl {"2":"hello","3":1111,"1":"text"} shell> cat hello.json {"2":"hello","3":1111,"1":"text"}
できた!
感想
ほぼPythonだった
参考URL,書籍
Julia 1.0 Programming Cookbook: Over 100 numerical and distributed computing recipes for your daily data science workflow (English Edition)
最近日本語訳が出たみたいです