【发布时间】:2017-12-09 21:47:05
【问题描述】:
下面是我正在处理的json文件的一小部分。
{
'kind': 'c',
'items': [
{
'kind': 'c',
'title': 'D',
'htmlTitle': 'P',
'link': 'h',
'pagemap': {
'hcard': [
{
'fn': 'A',
'title': 'S'
}
],
'person': [
{
'org': 't',
}
],
'cse_image': [
{
'src': 'h'
}
]
}
}
]
}
因为有些物品有个人钥匙,而有些没有。因此,为了检查项目是否包含人员密钥,我使用以下代码:
json = json.dumps(results)
for profile in range (0, 10):
if 'person' not in json['items'][profile]['pagemap']:
org="null"
else:
org= results['items'][profile]['pagemap']['person'][0]['org']
#results stores the json response.
但是在运行程序时它会给出一个错误提示“TypeError:字符串索引必须是整数”。
【问题讨论】:
-
你为什么打电话给
json.dumps? -
您的
json变量是一个字符串...您希望json['items']做什么??? -
当我使用 reesults 而不是 json 如果 'person' 不在结果中['items'][profile]['pagemap']:我得到 KeyError org = results['items' ][profile]['pagemap']['person'][0]['org'] KeyError: 'org'
-
你已经到了
org。那挺好的。现在打印results['items'][profile]['pagemap']['person'][0]你就会知道问题了 -
在使用 json.loads 时出现错误:TypeError: JSON 对象必须是 str、bytes 或 bytearray,而不是 'dict'
标签: python json python-3.x