在python中访问json数组而不引用其名称
我是python新手,我想了解如何在不提及json对象名称的情况下访问该对象中的数组 给定的json对象具有以下结构在python中访问json数组而不引用其名称,python,arrays,json,Python,Arrays,Json,我是python新手,我想了解如何在不提及json对象名称的情况下访问该对象中的数组 给定的json对象具有以下结构 import json input_json = { "records": [ { "values": { "col1": "1" }, "no": 1, }, { "values": {
import json
input_json = {
"records": [
{
"values": {
"col1": "1"
},
"no": 1,
},
{
"values": {
"col1": "2"
},
"no": 2,
}
],
"number_of_records": 2
}
myVar = json.load(input_json)
for i in myVar['records']: # How do I replace this line?
print i['values']['col1']
我需要遍历“记录”数组中的对象。如何在不使用myVar['records']的情况下获取数组
请注意,代码也不能依赖于json属性的顺序。唯一可以保证的是json字符串中只有一个数组
input_json = {
"records": [
{
"values": {
"col1": "1"
},
"no": 1,
},
{
"values": {
"col1": "2"
},
"no": 2,
}
],
"number_of_records": 2
}
for anything in input_json:
if isinstance(input_json[anything], list):
for values in input_json[anything]:
print(values['values']['col1'])
如果您不知道'values'和'col1'名称,还可以进一步嵌套for循环。代码是否仍然依赖于属性名称'records'?我误解了吗?它不是依靠“记录”,而是依靠记录。你可以把它改成任何令人惊奇的东西。因此,基本上我们正在循环输入json并检查其中是否有任何列表。如果是这样,我们从中获取“值”对象并继续。是这样吗?