1、删除文件
要删除文件,必须导入OS模块并运行其os.remove()
函数:
例如:
删除文件“ example.txt”:
import os
# 指定要删除的文件的路径
file_path = 'example.txt'
# 删除文件
os.remove(file_path)
2、判断文件是否存在
为避免出现错误,可能想要在尝试删除文件之前检查文件是否存在:
例如:
检查文件是否存在,然后将其删除:
import os
# 指定要删除的文件的路径
file_path = 'example.txt'# 检查文件是否存在if os.path.exists(file_path):
# 删除文件
os.remove(file_path)
print(f"文件 '{file_path}' 已删除。")
else:
print(f"文件 '{file_path}' 不存在。")
3、删除文件夹
要删除整个文件夹,请使用os.rmdir()
方法:
例如:
删除文件夹:
import os
os.rmdir("myfolder")
注意:只能删除空文件夹。
4、删除文件异常处理
删除文件确保程序有足够的权限删除文件。否则,会引发PermissionError
。不确定文件是否存在或可能会有其他问题,最好使用try...except
块来捕获和处理可能的异常。
import os
file_path = 'example.txt'
try:
os.remove(file_path)
print(f"文件 '{file_path}' 已删除。")
except FileNotFoundError:
print(f"文件 '{file_path}' 不存在。")
except PermissionError:
print(f"没有权限删除文件 '{file_path}'。")
except Exception as e:
print(f"删除文件时发生错误: {e}")
5、使用 os.unlink()
os.unlink()
是Python中os
模块的一个方法,用于删除文件。如果文件是一个目录,则会返回一个错误。os.unlink()
是 os.remove()
的别名,功能上没有区别,可以互换使用。
import os
file_path = 'example.txt'
# 使用 os.unlink() 删除文件
if os.path.exists(file_path):
os.unlink(file_path)
print(f"文件 '{file_path}' 已删除。")
else:
print(f"文件 '{file_path}' 不存在。")
6、使用 pathlib.Path.unlink()
pathlib
是 Python 3.4 引入的一个模块,提供了面向对象的路径操作方式。Path.unlink()
方法可以用来删除文件。
from pathlib import Path
file_path = Path('example.txt')
# 使用 pathlib.Path.unlink() 删除文件
if file_path.exists():
file_path.unlink()
print(f"文件 '{file_path}' 已删除。")
else:
print(f"文件 '{file_path}' 不存在。")
7、使用 shutil 模块(删除文件或目录)
shutil
模块主要用于高级文件操作,如复制和移动文件。如要删除的是文件,可以继续使用 os.remove()
或 os.unlink()
;如果要删除目录,使用 shutil.rmtree()
。
import shutil
import os
file_path = 'example.txt'
# 使用 shutil 模块删除文件
if os.path.isfile(file_path):
os.remove(file_path)
print(f"文件 '{file_path}' 已删除。")
else:
print(f"文件 '{file_path}' 不存在。")
8、使用 os.system 执行系统命令
该方法依赖于系统的命令来删除文件,适用于 Unix/Linux 系统。对于 Windows 系统,可以使用 del
命令。由于直接调用系统命令,这种方法通常不推荐,除非有特定需求。
import os
file_path = 'example.txt'
# 使用 os.system() 执行系统命令删除文件
os.system(f'rm {file_path}')
print(f"文件 '{file_path}' 已删除(如果存在)。")