当前位置: 首页 > 面试题库 >

如何将pymongo.cursor.Cursor转换为dict?

魏宏邈
2023-03-14
问题内容

我正在使用pymongo来查询区域中的所有项目(实际上是在地图上查询区域中的所有场所)。我db.command(SON())以前使用过在球形区域中搜索,该区域可以为我返回一本字典,并且在字典中有一个名为的键results,其中包含场所。现在,我需要在一个正方形区域中搜索,建议使用db.places.find,但是,这给了我一个pymongo.cursor.Cursor班级,我不知道如何从中提取场地结果。

有谁知道我应该将光标转换为字典并提取结果,还是使用另一种方法来查询正方形区域中的项目?顺便说一句,db是pymongo.database.Database类

代码是:

>>> import pymongo
>>> db = pymongo.MongoClient(host).PSRC 
>>> resp = db.places.find({"loc": {"$within": {"$box": [[ll_lng,ll_lat], [ur_lng,ur_lat]]}}})
>>> for doc in resp:
>>>     print(doc)

我有ll_lng,ll_lat,ur_lng和ur_lat的值,使用这些值,但此代码中什么也不会打印


问题答案:

find方法返回一个Cursor实例,该实例使您可以迭代所有匹配的文档。

要获得与给定条件匹配的第一个文档,您需要使用find_one。的结果find_one是字典。

您始终可以使用list构造函数来返回集合中所有文档的列表,但请记住,这将加载内存中的所有数据,并且可能不是您想要的。

如果需要重用游标并且有充分的理由不使用游标,则应该这样做
rewind()

演示使用find

>>> import pymongo
>>> conn = pymongo.MongoClient()
>>> db = conn.test #test is my database
>>> col = db.spam #Here spam is my collection
>>> cur = col.find()  
>>> cur
<pymongo.cursor.Cursor object at 0xb6d447ec>
>>> for doc in cur:
...     print(doc)  # or do something with the document
... 
{'a': 1, '_id': ObjectId('54ff30faadd8f30feb90268f'), 'b': 2}
{'a': 1, 'c': 3, '_id': ObjectId('54ff32a2add8f30feb902690'), 'b': 2}

演示使用find_one

>>> col.find_one()
{'a': 1, '_id': ObjectId('54ff30faadd8f30feb90268f'), 'b': 2}


 类似资料:
  • 问题内容: 我尝试使用以下行(请求库)POST请求从客户端获取JSON数据: 如何转换成字典? 有用: 但是如何将其转换为dict? 问题答案: 编辑:对于职位要求: 类“ dict” 您可以使用如下形式: 类“ dict”

  • 问题内容: 我在mySQL 5.1中有一个数据类型的日期列。如何将其转换为DATE? 这是我到目前为止所拥有的- 得到这个 错误-#1064-您的SQL语法有错误;查看与您的MySQL服务器版本相对应的手册以获取正确的语法,以在’FROM 7 FOR 4附近使用) 请帮忙。 问题答案: 您可以使用MySQL的功能 尽管我怀疑您使用Unix时间戳会更轻松

  • 问题内容: 有没有一种简单的方法可以避免处理文本编码问题? 问题答案: 您确实无法避免处理文本编码问题,但是Apache Commons中已有一些解决方案: 至: 至: 您只需要选择所需的编码即可。

  • 问题内容: 如何使用Java将Dicom文件(.dcm)转换为jpeg图像?这是我的代码: 我在运行项目时遇到以下错误 请帮助并提前感谢 问题答案: 这是使用dcm4che 2将DICOM转换为JPEG的链接 以下是我的代码,效果很好,我将其与导入一起放置,因此可能用完了。 用于运行它的罐子 dcm4che-imageio-2.0.28.jar dcm4che-image-2.0.28.jar j

  • 问题内容: 我正在使用A 将Json从Web转换为字符串。 这可能很简单,但是我似乎无法将此字符串转换为。 我怎样才能做到这一点? 问题答案: 请参阅文档和示例。

  • 问题内容: 如何在Java中将org.jdom.Document转换为字符串? 问题答案: