admin管理员组

文章数量:1516870

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

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

os.path.isdir()

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

os.rmdir()

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

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

实践操作

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

import os
defmain(contents):# isdir用于判断路径是否为目录,是目录的话需要进一步的循环读取if os.path.isdir(contents):for i in os.listdir(contents):# 含多层级文件目录,所以需要不停的更新
            main(os.path.join(contents, i))# 如果rmdir得到的路径是非空文件夹,会抛出异常try:ifnot os.listdir(contents):# 删除
			os.rmdir(contents)print('已删除空文件夹: ', contents)except Exception as e:print(e)# 传入路径
main(r'D:\数据小刀\办公自动化\删除空文件夹\1')

本文标签: 路径的目判断目标编程