我有一个简单的文件(username.json),如下所示:
with open(filename) as file_obj:
dictionary = json.load(file_obj)
print(dictionary['firstname'])
我使用以下代码来读取文件:
{u'lastname': u'doe', u'firstname': u'john'}
但是当我打印键的字典值" firstname"它什么都不打印。
当我打印字典时,我得到以下内容:
<div id="wrapper">
<input onkeyup="keyup(event)">
<div id="ghost"></div>
</div>
我知道&#34;你&#34;代表unicode,但由于某种原因,我无法使用firstname和lastname键。
更新:
出于某种原因,它现在有效!
答案 0 :(得分:1)
json.loads
将json对象转换为python等价物。
这意味着它使用列表和dicts而不是数组和对象。你看到了前者的代表。
doctionary["firstname"]
会获得名字中的值(即"doe"
),而它仍然是一个python对象。
如果你想再次看到json,你需要通过json.dumps
传递它 - 但当然,当你采用这种格式时,你将无法像上面那样操纵它。