如何在 Python 中测试空目录,无论其大小如何?

Bir*_*y40 2 python-2.7

假设我有一个目录C:/Test为空或包含超过 2000000 个文件,所有文件都具有相同的扩展名(例如*.txt)。

如何在枚举文件的情况下使用 Python 确定目录是否为空?

And*_*ite 9

我意识到这是一个很老的问题,但我发现这个是因为我想做类似的事情,我发现os.scandirany()结合使用很有用。scandir() 将返回目录中条目的迭代器而不是列表。any() 可以评估迭代器是否为非空。

for _ in os.scandir(path):
 print('not empty')
 break
Run Code Online (Sandbox Code Playgroud)

或者

if any(os.scandir(path)):
   print('not empty')
Run Code Online (Sandbox Code Playgroud)