Python递归删除目录下的空文件或空目录

思路:
递归获取文件名,判断文件大小,当大小等于0时,删除。读者可以合并两部分代码,把两者都干掉。
1:删除空文件

import os
def del_dir(path):
    for (root, dirs, files) in os.walk(path):
        for item in files:
            # print(root,item)
            a=os.path.join(root,item)
            print(a)
            r = os.path.getsize(a)
            if r==0:
                os.remove(a)
            try:
                pass
            except Exception as e:
                print('Exception',e)
if __name__ == '__main__':
    dir = r'./data2'
    del_dir(dir)

2:删除空目录

import os
def del_dir(path):
    for (root, dirs, files) in os.walk(path):
        for item in dirs:
            dir = os.path.join(root, item)
            try:
                os.rmdir(dir)  #os.rmdir() 方法用于删除指定路径的目录。仅当这文件夹是空的才可以, 否则, 抛出OSError。
                print(dir)
            except Exception as e:
                print('Exception',e)
if __name__ == '__main__':
    dir = r'F:\test'
    del_dir(dir)

猜你喜欢

转载自blog.csdn.net/qq_34237321/article/details/111916457
今日推荐