У меня есть коллекция MongoDB друзей, и я запустить кодMongoDB KeyError даже если поле существует
for doc in friends.find():
print doc
я получаю:
{u'_id': ObjectId('519ccdb86383cf1444445a1c'), u'twitter_id': 609034617}
{u'_id': ObjectId('519ccdb86383cf1444445a1d'), u'twitter_id': 253090547}
{u'_id': ObjectId('519ccdb86383cf1444445a1e'), u'twitter_id': 146221326}
{u'_id': ObjectId('519ccdb86383cf1444445a1f'), u'twitter_id': 1267350151}
{u'_id': ObjectId('519ccdb86383cf1444445a20'), u'twitter_id': 8806112}
{u'_id': ObjectId('519ccdb86383cf1444445a21'), u'twitter_id': 82589355}
, но если я делаю:
for doc in friends.find():
print doc['twitter_id']
I получить сообщение об ошибке:
Traceback (most recent call last):
File "C:\Users\schatterjee\workspace\scorefollowback.py\application.py", line 65, in <module>
print doc['twitter_id']
KeyError: 'twitter_id'
внутри цикла, какой типа объекта является ' doc'? – dm03514
@ dm03514 offcourse JSON, который находится внутри коллекции mongodb – codious
Вы посмотрели? Я не думаю, что это объект JSON, это может быть словарь python. Что произойдет, если вы закроете отладчик в своем цикле и проверите каждый «doc»? Можете ли вы получить доступ к атрибутам с 'doc.twitter_id', какие данные, если они есть, находятся в' doc' в цикле? – dm03514