每次从JSON数据中提取数据,我都会得到TypeError: unhashable type: 'dict'
我的json信息
u 'paging': {
u 'cursors': {
u 'after': u 'MTQyNzMzMjE3MDgxNzUzOQZDZD', u 'before': u 'OTUzNDg3MjMxMzQ2NjQ0'
}
}, u 'data': [{
u 'access_token': u 'XXXXX',
u 'category': u 'Internet/Software', u 'perms': [u 'ADMINISTER',
u 'EDIT_PROFILE', u 'CREATE_CONTENT', u 'MODERATE_CONTENT',
u 'CREATE_ADS', u 'BASIC_ADMIN'
], u 'name': u 'Nurdin Norazan Services', u 'id': u '953487231346644'
}, {
u 'access_token': u 'XXXXX',
u 'category': u 'Internet/Software', u 'perms': [u 'ADMINISTER',
u 'EDIT_PROFILE', u 'CREATE_CONTENT', u 'MODERATE_CONTENT',
u 'CREATE_ADS', u 'BASIC_ADMIN'
], u 'name': u 'Intellij System Solution Sdn. Bhd.', u 'id': u '433616770180650'
}]
}
我的代码
^{pr2}$顺便说一下,如何打印循环数据?在
根据文档,
json.load
用于读取文件指针(或实现read()
接口的某个对象)。 https://docs.python.org/2.7/library/json.html#json.load我会说你想要}。TypeError意味着您正在使用python字典(非常类似于JSON),而json.load/s应为字符串。在
json.loads
,但实际上你想要{至于循环遍历数据,请遍历它:
^{pr2}$如果您想递归地遍历json,您可能需要实现一些更高级的循环。在
您的问题不在于“提取”数据:这是您的print语句,正如完整的回溯所显示的那样。在
在该语句中,由于某种原因,您调用了
data[data]
。但这只意味着你要用它自己来索引数据字典。要获得data键,您需要使用一个字符串:data["data"]
;并且id值也是这样。在我刚得到答案
相关问题 更多 >
编程相关推荐