遍历嵌套MongoDB(JSON)文档时出现关键错误
我正在遍历一个mongo文档遍历嵌套MongoDB(JSON)文档时出现关键错误,json,python-3.x,mongodb,pymongo,Json,Python 3.x,Mongodb,Pymongo,我正在遍历一个mongo文档 { "_id" : ObjectId("5b39cbd94a6"), "original_query" : "az", "posts" : [ "comments" : [ { "comment" : "", "commentator" : "Abd", "fb_id" : "1000"
{
"_id" : ObjectId("5b39cbd94a6"),
"original_query" : "az",
"posts" : [
"comments" : [
{
"comment" : "",
"commentator" : "Abd",
"fb_id" : "1000"
},
{
"comment" : "Sharjeel Usmani Alig Haider Ali Haider Saifullah Naseem Akhtar Alig Haider Ali Tanveer Khan Alig Imran Choudhary Nizampur Tarique Anwar Champarni",
"commentator" : "Hi",
"fb_id" : "1000"
}],
"like" : {
"total" : "289",
"reactors" : [
{
"profile" : "",
"name" : "Ad ",
"fb_id" : "1000"
},
{
"profile" : "https://m.facebook.com",
"name" : "She ",
"fb_id" : "100"
}
]
]
}
我想计算评论部分的字数,但我甚至无法遍历评论部分。以下是我的方法
result=db.post.find().limit(3)
for post in doc['posts']:
for com in post['comments'] :
pprint.pprint(com['comment'])
但是我在第二个for循环中得到了关键错误
编辑:
所需输出:
Sharjeel Usmani Alig Haider Ali Haider Saifullah Naseem Akhtar Alig Haider Ali Tanveer Khan Alig Imran Choudhary Nizampur Tarique Anwar Champarni"
编辑:
我已使用访问like字段的id
for post in doc['posts']:
if 'like' in post:
for reactor in post['like']['reactors']:
list_of_reactor_ids.append(reactor['id'])
您可以使用聚合来实现这一点。。。你能发布输出的样本吗?我之前使用过简单访问列表和字典的方法,让我编辑并演示一下。你想数一数Sharjeel Usmani Alig Haider Ali Haider Saifullah Naseem Akhtar Alig Haider Ali Tanveer Khan Alig Imran Choudhary Nizamper Tarique Anwar Champarni中的单词数吗?是的,我想计算其中的字数。我没有编辑所需的输出作为字数,因为我甚至无法打印评论,撇开计数不谈。因此,
“评论员”的答案应该是21:“Hilal Khan”
,而“评论员”的答案应该是0:“Abdullah Azzam”,
?