栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

用python删除空文件夹~

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

用python删除空文件夹~

作者: 锋小刀
微信搜索【Python与Excel之交】关注我的公众号查看更多内容

文件夹和文件是不一样的,文件夹是含有独立路径的目录,是没有后缀名的。而在python的内置模块os中,删除文件夹和文件的方法也是不同的,所以在写代码之前,先给大家简单的介绍一下os判断目标是否为文件夹和删除空文件的两个方法。

os.path.isdir()

os.path.isdir()方法用于判断目标对象是否为一个目录,传入的参数是目标对象的绝对路径。当目标对象不是目录时返回的是False,是目录时返回的是True:

之所以要用os.path.isdir()来判断目标是否为目录,是因为有些文件夹里面包含了文件夹,一层一层的,而os.path.isdir()的作用就是一次一次判断是否为目录,是的话就继续访问,从而得到最底层的文件夹或文件。

os.rmdir()

os.rmdir()方法用于删除指定路径的目录,也就是文件夹为空的时候才可以删除, 否则, 会抛出异常。os.rmdir()只要区别于os.remove(),os.remove() 是要于删除文件的。

os.rmdir()传入的参数是目标对象的绝对路径:

实践操作

下面是完整代码,结合上面内容和注释,下面的代码基本没什么难度了:

import os
def main(contents):
	# isdir用于判断路径是否为目录,是目录的话需要进一步的循环读取
    if os.path.isdir(contents):
        for i in os.listdir(contents):
        	# 含多层级文件目录,所以需要不停的更新
            main(os.path.join(contents, i))
    # 如果rmdir得到的路径是非空文件夹,会抛出异常
    try:
        if not os.listdir(contents):
        	# 删除
			os.rmdir(contents)
			print('已删除空文件夹: ' , contents)
    except Exception as e:
        print(e)
# 传入路径
main(r'D:数据小刀办公自动化删除空文件夹1')
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/487490.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号