所以请温柔
有一个像这样的 mongo 文档:
{ "Institute" : "Ucambridge",
"Project" : [ #array of projects
{"Sample":[ #array of samples
{ "workflow" : "abc", "owner" : "peter" }
]
"pname":"project1",
"dir" : "C drive"
}
]
}
我知道在 mongo 中嵌套循环不是一个好主意,但是这是将数据交给我的方式。
尝试在我的 python 服务器上遍历我的所有项目并提取项目名称。
所以得到光标:
u = mongo.db.testpymongo.find()
可以通过以下方式获得学院:
for x in u :
print x["Institute"]
可以通过以下方式获取项目:
for x in u :
print x["Project"]
返回:
[{u'Sample':[{u'workflow:':u'wf', u'owner':u'peter'} ] u'pname':u'project1 ', u'dir:u'C drive'
}]
但是,我如何从光标访问我的 pname 变量?
我努力了 :
1.print x["Project:pname"] # does not work
2.print x["Project":"pname"] # gives unhashable type error
3.print x["pname"] # gives Key error
4.print x["Project"].["pname"] # gives syntax error
5.print x["Project.pname"] # gives key error
我应该在 find() 函数中使用属性来只返回文档的一部分吗?
即:像这样?
d = mongo.db.testpymongo.find({"Institute":"UCambridge", "Project.pname": "project 1" } )
谢谢 !