欢迎访问宙启技术站
智能推送

使用Python编写一个文件拷贝程序

发布时间:2023-12-04 09:31:56

以下是一个使用Python编写的文件拷贝程序的代码示例:

import os
import shutil

def copy_file(source_file, destination_file):
    try:
        # 使用shutil库的copy2函数复制文件,保留文件元数据
        shutil.copy2(source_file, destination_file)
        print("文件拷贝成功!")
    except IOError as e:
        print(f"文件拷贝失败:{str(e)}")
    except Exception as e:
        print(f"发生错误:{str(e)}")

if __name__ == "__main__":
    # 源文件路径和目标文件路径
    source_file_path = "./source_folder/source_file.txt"
    destination_folder_path = "./destination_folder"
    destination_file_path = os.path.join(destination_folder_path, "destination_file.txt")

    # 创建目标文件夹
    os.makedirs(destination_folder_path, exist_ok=True)

    # 拷贝文件
    copy_file(source_file_path, destination_file_path)

以上的代码实现了一个简单的文件拷贝程序。首先,copy_file函数接受源文件和目标文件的路径作为输入参数。在函数体内部,我们使用shutil.copy2函数来复制文件,并捕获可能的异常情况。如果文件成功拷贝,将打印出成功的提示信息;如果拷贝过程中出现了IO错误,将打印出失败的提示信息和具体错误信息;如果发生了其他未知错误,也将打印出错误信息。

if __name__ == "__main__":部分,我们设置了源文件路径和目标文件路径,并在程序运行前先创建目标文件夹(如果文件夹不存在的话)。然后调用copy_file函数来执行文件拷贝操作。

假设我们有一个名为source_file.txt的文本文件,位于当前目录下的source_folder文件夹中。我们希望将这个文件拷贝到当前目录下的destination_folder文件夹中,并重命名为destination_file.txt。通过运行上述代码,文件将被成功拷贝到目标位置,并在控制台上打印出"文件拷贝成功!"的提示信息。

请注意,以上代码仅为示例,如果在实际使用过程中需要拷贝大量文件或处理更复杂的文件操作,可能需要进行进一步的优化和异常处理。