我将一些配置值保存到文本文件中,以便稍后可以在我的代码中使用它们,所以我决定将它保存为JSON格式的文本文件,但是当我尝试从文件中读取值时我收到错误
json.decoder.JSONDecodeError:期望用双引号括起的属性名:第1行第2列(char 1)
文本文件内容为:
“{'EditDate':1497014759002}”
import json
import os
cPath = os.path.dirname(os.path.realpath(__file__))
configPath = cPath+'/tt.txt'
ConfigStr = {"EditDate" : 1497014759002}
print(ConfigStr)
print("-----------")
with open(configPath, 'w') as outfile:
json.dump(repr(ConfigStr), outfile)
with open(configPath) as json_data:
d = json.load(json_data)
jstr = d
print(jstr)
print("-----------")
a = json.loads(jstr)
lastedit = a['EditDate']
print(lastedit)
答案 0 :(得分:2)
您应该使用json.dump
转储到文件中。将要写入的对象和类似文件的对象传递给它。
...
with open(configPath, 'w') as outfile:
json.dump(ConfigStr, outfile)
with open(configPath) as json_data:
d = json.load(json_data)
print(d)
print("-----------")
lastedit = d['EditDate']
print(lastedit)