インメモリPython辞書の Pythonソースコード表現を取得するには?
なぜpythonとconfigファイルを気にするのですか?彼のコメントでトーマスは述べています
しかし、アプリケーション内の設定を変更する方法 (設定ダイアログなど) が必要な場合、正しい Python ファイルを自動的に書き込む良い方法はありません。
repr()
「基本的な」Python 型のみを使用すると仮定すると、構造体を書き出して、ast.literal_eval()
後でそれを読み戻すことができます。
記事にあるように、JSON/YAML やその他の形式を使用した方がよいのですが、Python dict を真剣に使用したくて、基本的な Python 型しか使用していない場合は...
書き出す (pformat を使用して、人間が読めるようにすることを試みます):
from pprint import pformat # instead of using repr()
d = dict(enumerate('abcdefghijklmnopqrstuvwxyz'))
open('somefile.py').write(pformat(d))
読み返し:
from ast import literal_eval
d = literal_eval(open('somefile.py').read())