Python 如何知道查询是否没有';不退还文件

Python 如何知道查询是否没有';不退还文件,python,python-3.x,firebase,google-cloud-firestore,Python,Python 3.x,Firebase,Google Cloud Firestore,如何知道文档是否为空?我不能做len(docs) 我需要知道是否没有与查询匹配的文档 谢谢大家! 因为stream(),所以在没有实际读取的情况下,没有一种简单的方法来确定它是否为空 到目前为止,最简单的解决方案是在您通过循环之后才知道。大概是这样的: docs=query.stream() 流_empty=True 对于文档中的文档: 流_empty=False #做点什么 如果流_为空: 打印(“它是空的”) 其他: 打印(“它不是空的”) 否则,您必须围绕流的生成器构建自己的生成器,以允

如何知道文档是否为空?我不能做
len(docs)

我需要知道是否没有与查询匹配的文档

谢谢大家!

因为
stream()
,所以在没有实际读取的情况下,没有一种简单的方法来确定它是否为空

到目前为止,最简单的解决方案是在您通过循环之后才知道。大概是这样的:

docs=query.stream()
流_empty=True
对于文档中的文档:
流_empty=False
#做点什么
如果流_为空:
打印(“它是空的”)
其他:
打印(“它不是空的”)
否则,您必须围绕流的生成器构建自己的生成器,以允许窥视。请参阅。

因为
stream()
,所以没有一种简单的方法可以在不实际读取它的情况下确定它是否为空

到目前为止,最简单的解决方案是在您通过循环之后才知道。大概是这样的:

docs=query.stream()
流_empty=True
对于文档中的文档:
流_empty=False
#做点什么
如果流_为空:
打印(“它是空的”)
其他:
打印(“它不是空的”)

否则,您必须围绕流的生成器构建自己的生成器,以允许窥视。请参阅。

您可以直接使用查询及其方法
get()
而不是使用
stream()返回的生成器

get方法运行查询并在您可以访问的列表中收集文档。如果没有与查询匹配的文档,则此列表为空

docs=query.get()
如果不是文档:
#做点什么
其他:
对于文档中的文档:
doc=doc.to_dict()
#做点什么

您可以直接使用查询及其方法
get()
而不是使用
stream()返回的生成器

get方法运行查询并在您可以访问的列表中收集文档。如果没有与查询匹配的文档,则此列表为空

docs=query.get()
如果不是文档:
#做点什么
其他:
对于文档中的文档:
doc=doc.to_dict()
#做点什么

您是否尝试过使用.to_dict()方法,然后在返回的字典上使用len()?我得到了这个错误“
generator”对象没有属性“to_dict”
您尝试过使用.to_dict()方法,然后在返回的字典上使用len()吗?我得到了这个错误“
generator”对象没有属性“to_dict”
docs = query.stream()
for doc in docs:
    // do something