pymongo如何将Cursor直接转成list?
感觉使用遍历和添加的方法
cursor=collection.find() res=[]
for t in cursor:
res.append(t)
感觉这个办法太呆了,不知道pymongo有没有内置的方法
主要放返回前端数据的时候,必须是json的格式,所以想问下
回答:
class Cursor(Generic[_DocumentType]): """A cursor / iterator over Mongo query results."""
find
返回的Cursor是一个迭代器。
再其内部有一个self.__data: deque = deque()
来存储数据,初次迭代时并没有数据。
具体看:
def next(self) -> _DocumentType: """Advance the cursor."""
if self.__empty:
raise StopIteration
if len(self.__data) or self._refresh():
return self.__data.popleft()
else:
raise StopIteration
__next__ = next
self._refresh()
会从MongoDB获取数据。
不建议使用内部方法来操作。不过你可以这样
cursor=collection.find()res=[t for t in cursor]
以上是 pymongo如何将Cursor直接转成list? 的全部内容, 来源链接: utcz.com/p/938733.html