Stephan K.
Stephan K.

Reputation: 15712

PyMongo: Print length and items of arrays inside MongoDB Documents

I have such documents in my MongoDB collection:

{u'date': datetime.datetime(2014, 9, 2, 12, 27, 51, 184000), 
 u'domains': [u'domain1', u'domain2']}

{u'date': datetime.datetime(2014, 9, 3, 11, 23, 51, 184000), 
 u'domains': [u'domain3', u'domain4', u'domain5']}

I want output like this printed out by python:

2-9-2014
domain1
domain2
total: 2 domains

3-9-2014
domain3
domain4
domain5
total: 3 domains

Upvotes: 0

Views: 541

Answers (1)

Ashoka Lella
Ashoka Lella

Reputation: 6729

import datetime                                                         
cursor = [{u'date': datetime.datetime(2014, 9, 2, 12, 27, 51, 184000),  
           u'domains': [u'domain1', u'domain2']},                       
          {u'date': datetime.datetime(2014, 9, 3, 11, 23, 51, 184000),  
           u'domains': [u'domain3', u'domain4', u'domain5']}]           
for node in cursor:                                                     
    print node['date'].strftime("%d-%m-%Y")                             
    for domain in node['domains']:                                      
        print domain                                                    
    print "total: {0} domains\n".format(len(node['domains'])) 

output

02-09-2014
domain1
domain2
total: 2 domains

03-09-2014
domain3
domain4
domain5
total: 3 domains

Upvotes: 1

Related Questions