shutil.copy
是 Python 标准库中的一个函数,用于将一个文件从一个位置复制到另一个位置。如果目标路径不存在,shutil.copy
不会自动创建它,这可能会导致错误。为了解决这个问题,你需要手动创建目标路径。
shutil
模块中的一个函数,用于复制文件。你可以使用 os
模块中的 makedirs
函数来创建目标路径。如果路径已经存在,makedirs
不会报错。
import os
import shutil
source_file = 'path/to/source/file.txt'
target_dir = 'path/to/target/directory'
target_file = os.path.join(target_dir, os.path.basename(source_file))
# 创建目标目录
os.makedirs(target_dir, exist_ok=True)
# 复制文件
shutil.copy(source_file, target_file)
问题: 目标路径不存在,导致 shutil.copy
报错。
原因: shutil.copy
不会自动创建目标路径。
解决方法: 使用 os.makedirs
创建目标路径。
import os
import shutil
source_file = 'path/to/source/file.txt'
target_dir = 'path/to/target/directory'
target_file = os.path.join(target_dir, os.path.basename(source_file))
# 确保目标目录存在
os.makedirs(target_dir, exist_ok=True)
# 执行复制操作
shutil.copy(source_file, target_file)
通过上述方法,你可以确保在复制文件之前目标路径已经存在,从而避免因路径不存在而导致的错误。
领取专属 10元无门槛券
手把手带您无忧上云