目标是遍历文件夹,输出不含目标文件类型
的文件夹路径;
使用os.walk()
函数
Windows系统中使用os.path.join()
,出现\\
,使用Path(filePath).as_posix()
来处理;
import os
from pathlib import Path
rootDir = 'D:\SVN'
sempty = set([])
slost = set([])
# 判断没有目标文件类型的文件夹
def lost_file(medimfour):
a = 0
for file in medimfour:
if os.path.splitext(file)[1].find('mp4') == 1:
a += 1
if a == 0:
return True
else:
return False
def list_all(vedio):
global sempty, slost
if not os.listdir(vedio):
sempty.add(Path(vedio).as_posix())
else:
for root, dirs, files in os.walk(vedio):
if len(dirs) == 0 and len(files) == 0:
sempty.add(Path(root).as_posix())
if len(dirs) == 0 and len(files) > 0 and lost_file(files):
slost.add(Path(root).as_posix())
list_all(rootDir)
print('空文件夹', len(sempty), sempty)
print('lost文件', len(slost), slost)
网友评论