- 1. 概要
- 2. 出力
- 3. json5 形式で読み書き
1. 概要
今度は出力です。
本ページは、下記のサイトを参考にさせていただきました。
「入力と出力」
「pprint --- データ出力の整然化 — Python 3.8.5 ドキュメント」
「Python | テキストファイルへ書き込む」
2. 出力
単純なテキストファイルへの出力をば。
import os
with open('text.txt', 'w') as file:
file.write('あいうおえおあお' + os.linesep)
てなソースを書いて実行すると、下記の内容のテキストファイルを、カレントディレクトリに作成します。
あいうおえおあお
3. json5 形式で読み書き
「json5」に関しては、「JavaScript Object Notation - Wikipedia」をご参照ください。
「json5」というモジュールを使えば、オブジェクトを「json5」形式にシリアライズして読み書きできるというのです。
import json5
file_name = "text.json"
dic = {
'住所' : '東京都 千代田区',
'名前' : '東京 太郎',
'ふりがな' : 'とうきょう たろう',
'年齢' : 18,
'性別' : '男',
}
with open(file_name, 'w', encoding='utf-8') as file:
json5.dump(dic, file)
というソースを書いて実行すると、下記の内容のファイルが作成されます。
ワタクシ的には、辞書の中身がエンコードされちゃうのが「ちょっとね」て感じなのですが。
{住所: "\u6771\u4eac\u90fd \u5343\u4ee3\u7530\u533a", 名前: "\u6771\u4eac \u592a\u90ce", ふりがな: "\u3068\u3046\u304d\u3087\u3046 \u305f\u308d\u3046", 年齢: 18, 性別: "\u7537"}
これを読み込みます。
import json5
import pprint
file_name = "text.json"
dic = {}
with open(file_name, 'r') as file:
dic = json5.load(file)
pp = pprint.PrettyPrinter()
pp.pprint(dic)
というソースを書いて実行すると、下記の結果が得られます。
{'ふりがな': 'とうきょう たろう', '住所': '東京都 千代田区', '名前': '東京 太郎', '年齢': 18, '性別': '男'}
出力時に、ソートされているのかな?
|