我是python新手,我给了一个任务,要不断进入目录并获取空的子目录或文件。 如果目录为空,则应将路径写入folder.txt,如果目录中包含文件,则应写入该文件的路径。 例如:
目录包含:
a/apple/mango/ess.txt
a/gat.xml
a/apple/asl/cdr/opa/est.py
a/apple/dse/
a/dews
输出(folder.txt)文件应为:
a/apple/dse/
a/dews
输出(file.txt)文件应为:
a/apple/mango/ess.txt
a/gat.xm
a/apple/asl/cdr/opa/est.py
我尝试使用此逻辑:
for subdir, dirs, files in os.walk(path):
for files in dirs:
fp1 = (os.path.join(path, files))
print (fp1)
if len(os.listdir(fp1)) == 0:
print("Directory is empty")
folder_added.write("\n Empty folder found %s \n" % (fp1))
但是它只能到两个子文件夹。
答案 0 :(得分:0)
您在正确的轨道上。此循环的每次迭代都描述一个新目录。
在每个目录中,您首先要检查sqlite3
的列表是否为空。
如果为空,则将目录路径(在下面的示例中为files
)写入文件。
如果root
不为空,则可以循环遍历并将文件名写入其他输出文件:
files