首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >python迭代mongo嵌套对象列表

python迭代mongo嵌套对象列表
EN

Stack Overflow用户
提问于 2018-04-16 17:41:09
回答 1查看 81关注 0票数 0

我正在使用查询从mongodb获取嵌套记录

代码语言:javascript
复制
@classmethod
def fetch_links(self, web_id):
cursor = self.db.websites.find({"_id": ObjectId(web_id)}, {"links": 1})
    results = list(cursor)
    return results

我将这个函数调用为:

代码语言:javascript
复制
old_links = Signatures.fetch_links(web_id)
    print(old_links)

和gettin结果为:

代码语言:javascript
复制
[{
'_id': ObjectId('5ac5efd6a37efa4c0e28f5aa'),
'links': [{
    'type': 'np',
    'link_id': 'quotes-1',
    'link': '/'
}, {
    'type': 'np',
    'link_id': 'quotes-2',
    'link': '/login'
},  {
    'type': 'np',
    'link_id': 'redcarpetsupport-1',
    'link': 'AR/index.html'
}, {
    'type': 'np',
    'link_id': 'redcarpetsupport-3',
    'link': 'services.html'
}]

}]

现在我想像这样访问:

代码语言:javascript
复制
print(old_links['link']), old_links(links['link_id']) and print(old_links['type'])

感谢您的帮助。提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2018-04-16 19:56:44

我通过将list转换为数组并在for中循环两次修复了这个问题。我不知道它是好是坏。

代码语言:javascript
复制
import numpy as np

old_links = Signatures.fetch_level1_links(web_id)
link_arr = np.array(old_links)

for item in link_arr:
    #print(item['links'])
    for link in item['links']:
        print(link['type'])
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49854155

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档