1. ホーム
  2. python

[解決済み] JSONデータをファイルに書き込むにはどうしたらいいですか?

2022-03-16 17:15:15

質問

変数にJSONデータが格納されています。 data .

毎回サーバーからデータを取得する必要がないように、テスト用にこれをテキストファイルに書き出したいのですが。

現在、こんなことを試しています。

obj = open('data.txt', 'wb')
obj.write(data)
obj.close

そして、このようなエラーが出ています。

TypeError: dictではなくstringかbufferでなければなりません。

どうすれば直るのでしょうか?

どのように解決するのですか?

実際のJSONの部分を忘れています。 data は辞書であり、まだJSONエンコードされていません。次のように記述します。 このように は、最大限の互換性を保つためです (Python 2 と 3)。

import json
with open('data.json', 'w') as f:
    json.dump(data, f)

最近のシステム (Python 3 と UTF-8 サポート) では、もっときれいなファイルを書くことができます。

import json
with open('data.json', 'w', encoding='utf-8') as f:
    json.dump(data, f, ensure_ascii=False, indent=4)