前提・実現したいこと
pythonで、機械学習させたモデルの保存先のパスをjson形式で保存し、その保存したjsonファイルを別プログラムで読み込むことでモデルの保存パスを取得できるようにしようとしています。
保存パスのjson文字列をjson辞書型に変換する際に以下のエラーが発生しました。
発生している問題・エラーメッセージ
Traceback (most recent call last): File "D:\graduation\GAN\keras\text.py", line 19, in <module> d = json.loads(model_json) File "C:\Users\wata\AppData\Local\Programs\Python\Python36\lib\json\__init__.py", line 354, in loads return _default_decoder.decode(s) File "C:\Users\wata\AppData\Local\Programs\Python\Python36\lib\json\decoder.py", line 339, in decode obj, end = self.raw_decode(s, idx=_w(s, 0).end()) File "C:\Users\wata\AppData\Local\Programs\Python\Python36\lib\json\decoder.py", line 355, in raw_decode obj, end = self.scan_once(s, idx) json.decoder.JSONDecodeError: Invalid \escape: line 1 column 16 (char 15)
該当のソースコード
python
1import os 2import json 3import pprint 4 5epoch = 1; 6 7gen_path = (os.path.abspath(os.path.dirname("__file__")) + 'models\my_model_gen' + str(epoch) + '.h5') 8dis_path = (os.path.abspath(os.path.dirname("__file__")) + 'models\my_model_dis' + str(epoch) + '.h5') 9 10print(gen_path) 11print(dis_path) 12 13model_json = '{"geneator":"' + str(gen_path) + '", "discriminator":"a"}' 14 15print("before" + model_json) 16 17d = json.loads(model_json) 18 19pprint.pprint(d, width=40)
試したこと
model_json.encode.decode('unicode-escape')にしてみた
補足情報(FW/ツールのバージョンなど)
python3.6.7
解決するにはどうしたらよいでしょうか。教えていただけると幸いです。
jsonについては初心者なので、やりかたが違っていたらご指摘ください
回答2件
あなたの回答
tips
プレビュー