如何解决使用Python迭代节点内的对象数组
我使用此功能读取Instagram JSON文件的内容并将信息保存在字典中。我有以下问题:如何迭代['node'] ['edge_media_to_tagged_user'] ['edges]]中的对象数组?这是我的代码:
info = {}
def store_data(file):
with open(file) as f:
data = json.load(f)
try:
info["tagged_users"] = data['node']['edge_media_to_tagged_user']['edges'][0]['node']['user']['username']
except KeyError:
info["tagged_users"] = "null"
return info
如下图所示,数组中有12个对象,我的代码仅适用于第一个[0]。我需要获取每个用户名。
基本上:
data['node']['edge_media_to_tagged_user']['edges'][0]['node']['user']['username']
data['node']['edge_media_to_tagged_user']['edges'][1]['node']['user']['username']
data['node']['edge_media_to_tagged_user']['edges'][2]['node']['user']['username']
data['node']['edge_media_to_tagged_user']['edges'][3]['node']['user']['username']
...
data['node']['edge_media_to_tagged_user']['edges'][x]['node']['user']['username']
解决方法
当然,您的代码仅适用于一侧-这就是您所要求的
data['node']['edge_media_to_tagged_user']['edges']
下的是词典列表。
要遍历列表,只需使用循环即可
for each_edge in data['node']['edge_media_to_tagged_user']['edges']:
print(each_edge) # or whatever you wish to do here
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。