尝试从 python 中的 unicode JSON 中读取内键和值
Trying to Read inner key, value from unicode JSON in python
我正在尝试从以下 unicode JSON 获取键值是 python
messagejson={
u'Records':
[
{
u'requestParameters': {u'sourceIPAddress': u'113.112.10.06'},
u'sql': {u'configurationId': u'note',
u'object': {u'eTag': u'ed3645fa5ee', u'sequencer': u'005', u'key': u'src-1.txt', u'size': 606},
u'mysql': {u'dn': u'url', u'name': u'invoice',
u'ownerIdentity': {u'principalId': u'A3UJ54'}
},
u'myval': u'1.0'
},
u'ee': {u'abc': u'tcCh6T', u'x': u'487DBE36E1'},
u'userIdentity': {u'principalId': u'AWS:AIDAIOJ4'},
u'eventSource': u'source'
}
]
}
已尝试使用
print messagejson['Records'][0]['sql']['key']
获取错误
TypeError: list indices must be integers, not str
有人可以帮忙吗
您的索引中缺少 object
级别:
messagejson['Records'][0]['sql']['object']['key']
# src-1.txt
您的 dict get 中缺少一个级别。
运行 这个你会看到的。
print messagejson['Records'][0]['sql']
'key'在'object'键的取值范围内,所以在得到'key'
之前需要加上'object'
print messagejson['Records'][0]['sql']['object']['key']
我正在尝试从以下 unicode JSON 获取键值是 python
messagejson={
u'Records':
[
{
u'requestParameters': {u'sourceIPAddress': u'113.112.10.06'},
u'sql': {u'configurationId': u'note',
u'object': {u'eTag': u'ed3645fa5ee', u'sequencer': u'005', u'key': u'src-1.txt', u'size': 606},
u'mysql': {u'dn': u'url', u'name': u'invoice',
u'ownerIdentity': {u'principalId': u'A3UJ54'}
},
u'myval': u'1.0'
},
u'ee': {u'abc': u'tcCh6T', u'x': u'487DBE36E1'},
u'userIdentity': {u'principalId': u'AWS:AIDAIOJ4'},
u'eventSource': u'source'
}
]
}
已尝试使用
print messagejson['Records'][0]['sql']['key']
获取错误
TypeError: list indices must be integers, not str
有人可以帮忙吗
您的索引中缺少 object
级别:
messagejson['Records'][0]['sql']['object']['key']
# src-1.txt
您的 dict get 中缺少一个级别。
运行 这个你会看到的。
print messagejson['Records'][0]['sql']
'key'在'object'键的取值范围内,所以在得到'key'
之前需要加上'object'print messagejson['Records'][0]['sql']['object']['key']