Python编写文件拷贝程序
发布时间:2023-12-04 11:25:22
下面是一个Python编写的文件拷贝程序的示例代码:
import shutil
def copy_file(source_path, dest_path):
try:
shutil.copy2(source_path, dest_path)
print(f"文件 {source_path} 已成功拷贝到 {dest_path}")
except FileNotFoundError:
print(f"文件 {source_path} 不存在")
except IsADirectoryError:
print(f"{source_path} 是一个目录而不是文件")
except shutil.SameFileError:
print(f"{source_path} 和 {dest_path} 是同一个文件")
except PermissionError:
print(f"没有权限访问文件 {source_path} 或目标文件夹 {dest_path}")
except Exception as e:
print(f"拷贝文件时发生了未知错误:{e}")
# 使用例子
copy_file("source.txt", "dest.txt")
上述示例代码中的copy_file函数是用来拷贝文件的。它接受两个参数,即源文件的路径和目标文件的路径。通过使用shutil模块的copy2函数来执行文件拷贝操作。
在copy_file函数中,我们处理了以下几种情况:
- 如果源文件不存在,将捕获FileNotFoundError异常,并输出错误信息。
- 如果源路径是一个目录而不是文件,将捕获IsADirectoryError异常,并输出错误信息。
- 如果源文件和目标文件路径相同,将捕获shutil.SameFileError异常,并输出错误信息。
- 如果没有权限访问源文件或目标文件夹,将捕获PermissionError异常,并输出错误信息。
- 如果发生了其他未知错误,将捕获Exception异常,并输出错误信息。
在使用例子中,我们调用copy_file函数来拷贝一个名为source.txt的文件到dest.txt文件中。如果操作成功,将打印出相应的成功消息;如果遇到错误,将输出相应的错误信息。
你可以根据自己的需求修改copy_file函数的实现,并为其添加更多的错误处理逻辑。
