删除文件 path,删除时候如果path是一个目录, 抛出 OSError错误。
remove() 同 unlink() 的功能是一样的
os.remove(‘a.txt‘)
如果remove文件夹就会报错
>>> os.remove(r"C:\Users\k\Desktop\aaa") Traceback (most recent call last): File "<stdin>", line 1, in <module> PermissionError: [WinError 5] 拒绝访问。: ‘C:\\Users\\k\\Desktop\\aaa‘
现在删除下面这个文件
删除xx.txt
>>> os.remove(r"C:\Users\k\Desktop\aaa\xx.txt")
os.removedirs(path),删除文件夹,但是文件夹必须为空。
递归地删除目录。类似于rmdir(), 如果子目录被成功删除, removedirs() 将会删除父目录;但子目录没有成功删除,将抛出错误。
例如, os.removedirs(“a/b/c”) 将首先删除c目录,然后再删除b和a, 如果他们是空的话,则子目录不能成功删除,将抛出 OSError异常
>>> import os >>> os.removedirs("C:\Users\k\Desktop\aaa") File "<stdin>", line 1 SyntaxError: (unicode error) ‘unicodeescape‘ codec can‘t decode bytes in position 2-3: truncated \UXXXXXXXX escape >>> os.removedirs(r"C:\Users\k\Desktop\aaa") Traceback (most recent call last): File "<stdin>", line 1, in <module> File "C:\Users\k\Anaconda3\lib\os.py", line 259, in removedirs rmdir(name) OSError: [WinError 145] 目录不是空的。: ‘C:\\Users\\k\\Desktop\\aaa‘
删除aaa文件夹,由于aaa文件夹非空,需要先删除子目录bbb,再删除父目录aaa
写法如下
>>> os.removedirs(r"C:\Users\k\Desktop\aaa/bbb")
如果要删除目录,请使用rmdir()。
os.rmdir(path)
删除目录 path,要求path必须是个空目录,否则抛出OSError错误
>>> os.rmdir(r"C:\Users\k\Desktop\aaa") Traceback (most recent call last): File "<stdin>", line 1, in <module> OSError: [WinError 145] 目录不是空的。: ‘C:\\Users\\k\\Desktop\\aaa‘
删除一个非空目录
例子
>>> import shutil >>> shutil.rmtree(r"C:\Users\k\Desktop\aaa") >>>
原文地址:https://www.cnblogs.com/sea-stream/p/11192474.html
时间: 2024-10-08 20:03:51