类型错误:“Cursor”类型的对象没有len()

2024-04-29 12:22:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我得到这个错误:

TypeError: object of type 'Cursor' has no len()

当我试图执行时:

reply = db['test'].find({"date":{"$gt":date_query}} ,{"date":1,"route_id":1,"loc":1,"_id":0})

length = len(reply)

Tags: ofnotestiddbdatelenobject
3条回答

Mongo 4.0.3/PyMongo 3.7.0开始,您可以选择在cursor上使用^{},而不是count

db.collection.count_documents({ "a": 2 })
# where { "a": 2 } is whatever filtering query

db.collection.count_documents是现在已弃用的^{}的替代方案。

是的,伯爵将为你做这项工作。

length = reply.count() 

或者

length = reply.count(with_limit_and_skip=False)

不得不忍受很多,因为长度=计数(回复)也没用。既然我还不能发表评论,我想留下这个答案。希望这能帮助某人节省一些时间。

编辑:

刚刚注意到你在标签中引用了mongodb。我很困惑,因为你的问题主体没有指定你使用的数据库。

游标有一个方法“count()”,它将返回您要查找的内容。

PyMongo Cursor Docs

相关问题 更多 >