diadia

興味があることをやってみる。自分のメモを残しておきます。

csvファイル 辞書型データ jsonモジュールメモ

https://qiita.com/motoki1990/items/0274d8bcf1a97fe4a869 https://docs.python.org/ja/3/library/csv.html#csv.DictReader https://qiita.com/pscreator/items/6040bddbbf9e9c05f77a http://hktech.hatenablog.com/entry/2018/09/10/235725

djangoRest APIを使う場合にはインプット情報はJSON形式でなければならない。そして現在sqlite3を使っている。調べてみたらsqlite3からjson形式で直接ファイルの出力は用意されていない?ようでcsvに出力したデータをjson形式に変換しようと試みている。

そういうわけで上記のURLがcsvからjsonに変換する資料を控えておいた。

 

jsonモジュールを使えるようにしてみる

jsonモジュールをある程度使えるようにならないといけないことが発覚したので、ここに使い方で気になった点をメモする。

つまりjsonモジュールとは?

jsonモジュールはpythonの組み込み型のデータとJSONデータの相互変換する機能を提供する。つまり、JSONデータをpythonで扱いたい時とpythonで組み立てたデータをJSONデータとして出力したい時に使われるモジュールだ。

JSONpythonのデータ型に変換する
json.loads(JSON文字列)
#または、
json.load(ファイル)

引数によって使う関数が異なることに注意すること。
apiでPOSTするために使いたいのであまりこの関数は使わないかもしれない。apiのgetを使う際もrequestsオブジェクトにjson()メソッド使うし本当に使うか不明...。

 

pythonのデータ型をJSONに変換する
json.dumps(pythonオブジェクト)
# または
json.dump(pythonオブジェクト)

dumpsの場合はJSON文字列に変換するだけである。dumpの場合はJSON文字列に変換してファイルに書き出す。この違いがある。