Python 检查全局中的路径是否为空?

Python 检查全局中的路径是否为空?,python,glob,Python,Glob,检查全局搜索中是否有任何文件夹为空,并打印其名称 目录中有些文件夹是空的 代码如下: for i in glob.iglob('**/Desktop/testna/**' ,recursive = True): if not os.listdir(i): print(f'{i} is empty' + '\n') 返回: NotADirectoryError 使用操作系统查找空目录要容易得多。walk: import os print([root for root,

检查全局搜索中是否有任何文件夹为空,并打印其名称

目录中有些文件夹是空的

代码如下:

for i in glob.iglob('**/Desktop/testna/**' ,recursive = True):
    if not os.listdir(i): 
        print(f'{i} is empty' + '\n')
返回:

NotADirectoryError

使用
操作系统查找空目录要容易得多。walk

import os
print([root for root, dirs, files in os.walk('/') if not files and not dirs])
或者,如果您希望逐行打印文件:

import os
for root, dirs, files in os.walk('/'):
    if not files and not dirs:
        print(root)

iglob
还返回文件路径,因此在调用方法查看目录是否为empy之前,应调用方法查看给定路径是否为目录,使用
isdir
。是否检查当前工作目录?在何处设置问题中的路径?以便在该路径中启动递归搜索?
os.walk(“/”)
表示从根目录进行递归搜索。您可以用要开始搜索的路径替换
“/”
。为什么“/”表示根目录?这只是根目录的表示方式。您可以在这里阅读有关根目录的内容:如果您也在Windows中,它也可以工作,但如果您在Windows中,您也可以使用
r'C:\'
来引用C驱动器的根目录。以及如何在结果中打印每一行的下一行?我试过我的问题,但我不知道怎么做,你能编辑你的答案与结果是一行一行。谢谢