在Python中从json数组中提取数据对象
我有这个数据对象,我想知道如何才能选择名为在Python中从json数组中提取数据对象,python,Python,我有这个数据对象,我想知道如何才能选择名为提交(或项目)的子对象。我尝试了all\u commits=all\u data['commits'],但python迫使我给它一个整数而不是字符串。想法 [ { "commits": [ { "project_id": "1", "commit_title":
提交
(或项目
)的子对象。我尝试了all\u commits=all\u data['commits']
,但python迫使我给它一个整数而不是字符串。想法
[
{
"commits": [
{
"project_id": "1",
"commit_title": "commit 1",
"date": "date 1",
"markdown": "markdown 1"
},
{
"project_id": "1",
"commit_title": "commit 2",
"date": "date 2",
"markdown": "markdown 2"
},
{
"project_id": "1",
"commit_title": "commit 3",
"date": "date 3",
"markdown": "markdown 3"
},
{
"project_id": "1",
"commit_title": "commit 4",
"date": "date 4",
"markdown": "markdown 4"
},
{
"project_id": "2",
"commit_title": "commit 5",
"date": "date 5",
"markdown": "markdown 5"
},
{
"project_id": "2",
"commit_title": "commit 6",
"date": "date 6",
"markdown": "markdown 6"
}
]
},
{
"projects": [
{
"id": 1,
"project_name": "GreenGlass for Groups",
"description": "Support group projects for retention agreements"
},
{
"id": 2,
"project_name": "Zumo Redesign",
"description": "New eda theme-based design"
}
]
}
]
它看起来像一个列表,请尝试:
all_commits = all_data[0]['commits']
JSON方法:
结果
我让它工作了,但我不相信它能扩展?如果没有一个更明显的方式,我错过了,那么我会去的。谢谢必须等9分钟broskii是讽刺和hpyerbolic,broI假设数据已经作为JSON加载。哦,我以为那是something.JSON的内容,所以我使用
JSON.loads
。
s = '''
PUT YOUR JSON array here
'''
import json
q = json.loads(s)
print q[0]['commits']
[{u'date': u'date 1', u'project_id': u'1', u'commit_title': u'commit 1', u'markdown': u'markdown 1'}, {u'date': u'date 2', u'project_id': u'1', u'commit_title': u'commit 2', u'markdown': u'markdown 2'}, {u'date': u'date 3', u'project_id': u'1', u'commit_title': u'commit 3', u'markdown': u'markdown 3'}, {u'date': u'date 4', u'project_id': u'1', u'commit_title': u'commit 4', u'markdown': u'markdown 4'}, {u'date': u'date 5', u'project_id': u'2', u'commit_title': u'commit 5', u'markdown': u'markdown 5'}, {u'date': u'date 6', u'project_id': u'2', u'commit_title': u'commit 6', u'markdown': u'markdown 6'}]