您加载JSON数据有些脆弱。代替:
json_raw= raw.readlines()json_object = json.loads(json_raw[0])
您实际上应该这样做:
json_object = json.load(raw)
您不应该将“
JSON对象”视为什么。您所拥有的是清单。该列表包含两个字典。字典包含各种键/值对,所有字符串。当您这样做时
json_object[0],您将要求列表中的第一个字典。当您使用进行迭代时
forsong injson_object[0]:,您将遍历字典的键。因为那是您遍历dict时得到的。如果要访问与该字典中的键关联的值,则可以使用
json_object[0][song]。
这些都不是特定于JSON的。这只是基本的Python类型,其基本操作如本教程所述。



