我习惯于使用 CSV 文件将数据导入和导出 Python,但这显然存在挑战。有没有简单的方法将字典(或字典集)存储在 JSON 或 pickle 中?文件?
例如:
data = {}
data ['key1'] = "keyinfo"
data ['key2'] = "keyinfo2"
我想知道如何保存它,以及如何重新加载它。
最佳答案
Pickle保存:
try:
import cPickle as pickle
except ImportError: # Python 3.x
import pickle
with open('data.p', 'wb') as fp:
pickle.dump(data, fp, protocol=pickle.HIGHEST_PROTOCOL)
见 the pickle module documentation有关 protocol
参数的更多信息。
Pickle加载:
with open('data.p', 'rb') as fp:
data = pickle.load(fp)
JSON保存:
import json
with open('data.json', 'w') as fp:
json.dump(data, fp)
提供额外的参数,例如 sort_keys
或 indent
,以获得漂亮的结果。 sort_keys 参数将按字母顺序对键进行排序,indent 将使用 indent=N
空格缩进您的数据结构。
json.dump(data, fp, sort_keys=True, indent=4)
JSON加载:
with open('data.json', 'r') as fp:
data = json.load(fp)
https://stackoverflow.com/questions/7100125/