如何用Python删除一个文件?
Posted sea-stream
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用Python删除一个文件?相关的知识,希望对你有一定的参考价值。
删除文件 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") >>>
以上是关于如何用Python删除一个文件?的主要内容,如果未能解决你的问题,请参考以下文章