我會通過我的收集和返回座標信息,但是當它擊中它拋出這個錯誤空記錄:蒙戈查詢犯規承認空記錄
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