如何在Python中删除文件或文件夹?
2022-09-05 00:46:22
如何删除文件或文件夹?
os.remove()
删除一个文件。
os.rmdir()
删除一个空目录。
shutil.rmtree()
删除目录及其所有内容。
来自 Python 3.4+ pathlib 模块的 Path
对象也公开了以下实例方法:
pathlib.Path.unlink()
删除文件或符号链接。
pathlib.Path.rmdir()
删除一个空目录。
import os
os.remove("/tmp/<file_name>.txt")
或
import os
os.unlink("/tmp/<file_name>.txt")
或
pathlibPython 版本库 >= 3.4
file_to_rem = pathlib.Path("/tmp/<file_name>.txt")
file_to_rem.unlink()
用于删除文件或符号链接的取消链接方法。
如果missing_ok为 false(默认值),则当路径不存在时,将引发 FileNotFoundError。
如果missing_ok为真,则将忽略 FileNotFoundError 异常(与 POSIX rm -f 命令的行为相同)。
版本3.8中已更改:添加了missing_ok参数。
os.path.isfile("/path/to/file")
exception handling.
示例os.path.isfile
#!/usr/bin/python
import os
myfile="/tmp/foo.txt"
## If file exists, delete it ##
if os.path.isfile(myfile):
os.remove(myfile)
else: ## Show an error ##
print("Error: %s file not found" % myfile)
#!/usr/bin/python
import os
## Get input ##
myfile= raw_input("Enter file name to delete: ")
## Try to delete the file ##
try:
os.remove(myfile)
except OSError as e: ## if failed, report it back to the user ##
print ("Error: %s - %s." % (e.filename, e.strerror))
Enter file name to delete : demo.txt Error: demo.txt - No such file or directory. Enter file name to delete : rrr.txt Error: rrr.txt - Operation not permitted. Enter file name to delete : foo.txt
shutil.rmtree()
示例shutil.rmtree()
#!/usr/bin/python
import os
import sys
import shutil
# Get directory name
mydir= raw_input("Enter directory name: ")
## Try to remove tree; if failed show an error using try...except on screen
try:
shutil.rmtree(mydir)
except OSError as e:
print ("Error: %s - %s." % (e.filename, e.strerror))