0

辞書をファイルに書き込みたい。コードは次のとおりです。

 fs = open( store_file , "w" )
 for k in store_dic:
     temp_line = k + " " + store_dic[k] + "\n"
     fs.write( temp_line )
     logger.info( "store_record " + store_file + " " + temp_line[:-1] )
     fs.close

ご覧のとおり、辞書の走査store_dicとファイルへの書き込みを同時に行っています。このコードを 6 秒ごとに呼び出すため、これを改善する方法はありますか?

ありがとうございました。

4

2 に答える 2

4

pickle を使用して Python dict をファイルに保存する:

import pickle

# write python dict to a file
mydict = {'a': 1, 'b': 2, 'c': 3}
output = open('myfile.pkl', 'wb')
pickle.dump(mydict, output)
output.close()

dict はファイルからロードされます:

file = open('myfile.pkl', 'rb')
mydict = pickle.load(file)
file.close()

詳細については、次のリンクを参照してください。

http://www.saltycrane.com/blog/2008/01/ Saving-python-dict-to-file-using-pickle/

于 2012-11-06T05:05:38.140 に答える
2

json モジュールを使用するだけです。

import json

store_dic = { "key1": "value1", "key2": "value2" }

with fs as open(store_file, "w"):
    json.dump(store_dic, fs)
于 2012-11-06T05:01:27.190 に答える