Tel*_*hot 5 python json dictionary
我目前这样做是为了将 JSON 保存到文件中:
with open(filename, 'w+') as f:
json.dump(data, f)
Run Code Online (Sandbox Code Playgroud)
我这样做是为了将文件中的 JSON 加载到 Python 字典中:
with open(filename, 'r') as f:
data = json.loads(json.load(f))
Run Code Online (Sandbox Code Playgroud)
我知道json.load
从文件json.loads
加载 JSON 并从字符串加载 JSON。
当我调用json.load(f)
从文件加载 JSON 时,我得到了 JSON 对象的字符串表示:
'{"a": 1,"b": 2,"c": 3}'
Run Code Online (Sandbox Code Playgroud)
然后我调用json.loads(json.load(f))
将该字符串表示形式转换为 Python 字典:
{'a': 1, 'b': 2, 'c': 3}
Run Code Online (Sandbox Code Playgroud)
我知道我也可以ast.literal_eval()
用来将字符串转换为 Python 字典。
我的问题是 - 将 JSON 从文件目录加载到 Python 字典的正确方法是什么?是否真的有必要同时调用两者json.loads
并将json.load
JSON 从文件中获取到字典中?
您data
必须已经是一个 JSON 字符串,然后在json.dump
. 然后当然您需要稍后对其进行双重解码。因此,无需再次使用 JSON 对原始 JSON 进行编码,只需将其按原样写入文件即可:
with open(filename, 'w+') as f:
f.write(data)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
6479 次 |
最近记录: |