python: loadとloads, dumpと dumpsの違い
jsonを扱っていると、json->dict, dict->jsonの時に使うload()やdump()を使うことになります。ただ、loads()やdumps()といった似た関数もあり、ややこしかったので、メモします。
変数から変数に変換するのがloads(), dumps()
変数に入っているjsonデータを別の変数にdict型として保存する場合に使うのがloads()です。例えば
data_dict = json.loads(data_json)
といった感じです。dumps()はその逆。
変数とファイル間でデータをやり取りするのが、load(), dump()
jsonデータが保存されたファイルの内容をdict型で変数に保存する場合に使うのがload()です。例えば
file = open("data.json","r")
data_dict = json.load(file)
といった感じです。dumpはその逆
関数名がほぼ同じなので、紛らわしいですが、loads()やdumps()の"s"はstringの"s"と思えば覚えやすいと思います。