PyMongo - 打印结果,使用for并且不显示

时间:2017-04-24 21:10:24

标签: python mongodb

最近我们一直在大学学习Mongo和Python,但是,在我们给出的最新任务中,我们需要使用PyMongo来使用预先存在的餐馆数据库并执行各种基本任务。

由于手术,我无法协助进行讲座,所以我仍然对如何使用PyMongo做某些事情感到困惑。

任务的一部分是写一些查询来做“搜索纬度低于-90的餐馆”和类似的任务。

我的代码看起来有点像这样:

conn = pymongo.MongoClient()
restDB = conn.restaurantes
doc = restDB.datos


prim = doc.find({"address.coord.0":{"$lt":-95.754168}}, {"name":True})
for resultado in prim:
    print resultado

#print prim

每当我这样做时,都没有显示任何结果,也没有错误,所以这让我很困惑。还试图打印“prim”给我一些.cursor消息。

1 个答案:

答案 0 :(得分:0)

查询集合并使用pymongo迭代结果的基本模板是:

from pymongo import MongoClient

with MongoClient() as client:
    db = client.get_database("my_db_name")
    coll = db.get_collection("my_collection_name")
    result_cursor = coll.find({"some_field":{"$lt":100}}, {"some_field":1})
    for doc in result_cursor:
        print doc

>>
{u'some_field': 3, u'_id': ObjectId('578d52a93ea71afa979e5737')}
...