from pymongo.objectid import ObjectId
thing = db.things.find_one({'_id': ObjectId('4ea113d6b684853c8e000001') })
EDIT:
Текущий импорт:
from bson.objectid import ObjectId
Ответ 2
PyMongo изменил свою структуру. ObjectID больше не импортируется из pymongo, а из bson. Теперь это должно быть:
from bson.objectid import ObjectId
thing = db.things.find_one({'_id': ObjectId('4ea113d6b684853c8e000001')})
В качестве напоминания, за pypi/pymongo, не устанавливайте пакет "bson". PyMongo поставляется со своим собственным пакетом bson; "pip install bson" устанавливает сторонний пакет, который несовместим с PyMongo.
Ответ 3
Для печати:
import pymongo
from bson.objectid import ObjectId
print(db.things.find_one({'_id': ObjectId('4ea113d6b684853c8e000001')}))
если вы не хотите печатать, хранить в другой переменной
Ответ 4
thing = db.things.find_one({'_id':ObjectId('4ea113d6b684853c8e000001')}) должен работать
Ответ 5
Документация PyMongo, похоже, не синхронизирована с текущей версией. ObjectIds теперь находятся в пространстве имен bson.objectid. Если я правильно помню, это было так, начиная с версии 2.3.
Используйте из bson.objectid import ObjectId.