我会通过我的收集和返回坐标信息,但是当它击中它抛出这个错误空记录:蒙戈查询犯规承认空记录
a=get_coords(doc['coordinates']['coordinates'])
print a
这是函数get_coords:
def get_coords(doc):
if doc == None:
pass
else:
longs, lat = doc
return lat, longs
错误:
TypeError: 'NoneType' object has no attribute '__getitem__'
这则停止我的查询,并没有进一步的记录再转身。
我怎样才能防止这种情况发生,我的意思是我仍然希望它继续寻找其他记录,而不是与此错误信息停止。
谢谢
感谢他们都帮助的答案。我能得到它的实现:
if doc['coordinates']==None:
pass
else:
b=get_coords(doc['coordinates']['coordinates'])
print b
我做到这一点首先检查确实是有集合中的一个文档后。它现在似乎打印集合中的所有现有坐标。
感谢
感谢突出使用var b中的错字。我已经用你的建议更新了我的功能,它仍然发送相同的错误。 – user94628
好的,感谢您的更新!它仍然返回一个错误,因为你不能在NoneType上调用doc ['coordinates'] ['coordinates']'...所以我会尝试编辑我的答案以满足你的需要......等等,试试我的实际的代码:也就是说,不要在'get_coords'函数中使用'if'语句,而应该使用类似的方式。 – rofls
我会尝试改变我的答案,如果它仍然不适合你,但请尝试更接近我的答案:不要求'doc ['coordinates'] ['coordinates']'直到* after * you知道'doc'存在。 – rofls