Python中使用distutils.file_util的copy_file()函数来实现文件复制功能
Python中使用distutils.file_util的copy_file()函数可以实现文件复制功能。distutils是Python内置的模块,提供了一些用于构建和安装Python软件包的工具函数。
copy_file()函数的语法如下:
copy_file(src, dst, update=1, verbose=1, dry_run=0)
其中,src是源文件的路径,dst是目标文件的路径。update参数用于控制是否只在dst文件不存在或者src文件的修改时间晚于dst文件时才进行复制。verbose参数用于控制是否打印复制详细信息。dry_run参数用于控制是否进行实际的复制操作,如果设置为1,则只会打印复制操作的信息而不进行复制。
下面是一个使用copy_file()函数实现文件复制的例子:
from distutils.file_util import copy_file
def copy_file_example(src, dst):
try:
# 复制文件
copy_file(src, dst)
print(f"成功复制文件: {src} -> {dst}")
except FileNotFoundError:
print(f"源文件 \"{src}\" 不存在")
except Exception as e:
print(f"复制文件时出现错误:{e}")
# 测试
copy_file_example("source/file.txt", "destination/file.txt")
以上代码将源文件"source/file.txt"复制到目标文件"destination/file.txt"。如果源文件不存在,则会捕获FileNotFoundError异常并打印相应的错误信息。如果复制过程中出现其他错误,则会捕获异常并打印相应的错误信息。
运行以上代码,如果源文件存在并且目标文件不存在,则会输出"成功复制文件: source/file.txt -> destination/file.txt"的信息。
如果想要在复制过程中不打印详细信息,可以将verbose参数设为0,即copy_file(src, dst, verbose=0)。
如果只想在dst文件不存在或者src文件的修改时间晚于dst文件时才进行复制,可以将update参数设为0,即copy_file(src, dst, update=0)。
需要注意的是,distutils模块是Python标准库的一部分,但它并不是专门用于文件操作的模块。在实际开发中,如果需要更复杂的文件操作,可以考虑使用shutil模块或者第三方包,如pathlib等。
