我有这样的字典:
{
'cost' : cost,
'oLen' : oLen
}
我将此内容写入文件,因此该文件包含:
{'oLen': 32, 'cost': 2048}
后来,我这样做了:
with open('conf.conf') as f:
config = json.loads(f.read())
print config['oLen']
得到这个:
ValueError: Expecting property name: line 1 column 2 (char 1)
如果我将json.loads改为json.dumps,我得到:
TypeError: string indices must be integers, not str
答案 0 :(得分:2)
您需要在JSON中使用双引号。
如果您使用json.dump
将原始字典写入文件,您不必担心它!
>>> with open('output', 'w') as f:
json.dump({'oLen': 32, 'cost': 2048}, f)
>>> with open('output') as f:
obj = json.load(f)
>>> print(obj)
{'cost': 2048, 'oLen': 32}
答案 1 :(得分:1)