Python实现文件的复制和剪切
发布时间:2023-12-04 13:29:54
要实现文件的复制和剪切,可以使用Python的shutil模块。shutil模块提供了一些用于文件和目录操作的函数。
以下是一个文件复制的例子:
import shutil
def copy_file(src, dest):
shutil.copy(src, dest)
# 源文件路径和目标文件路径
src_file = 'C:/path/to/source/file.txt'
dest_file = 'C:/path/to/destination/file.txt'
# 调用函数进行文件复制
copy_file(src_file, dest_file)
在上面的例子中,shutil.copy()函数从源文件路径src复制文件到目标文件路径dest。
以下是一个文件剪切的例子:
import os
import shutil
def cut_file(src, dest):
shutil.move(src, dest)
# 源文件路径和目标文件夹路径
src_file = 'C:/path/to/source/file.txt'
dest_folder = 'C:/path/to/destination/folder/'
# 获取目标文件夹的路径和文件名
dest_folder_path = os.path.dirname(dest_folder)
dest_file_name = os.path.basename(src_file)
# 调用函数进行文件剪切
cut_file(src_file, os.path.join(dest_folder_path, dest_file_name))
在上面的例子中,shutil.move()函数从源文件路径src剪切文件到目标文件夹路径dest。为了确保移动后的文件名与原始文件名相同,需要使用os.path模块的dirname()和basename()函数获取目标文件夹的路径和文件名,并将它们合并为剪切后的文件路径。
需要注意的是,如果目标文件路径已经存在同名文件,shutil.copy()和shutil.move()函数会抛出FileExistsError异常。可以使用os.path.exists()函数来检查目标文件路径是否已经存在文件,或使用shutil.copy2()和shutil.move()函数来覆盖已经存在的文件。
另外,复制和剪切操作都是将文件从源位置复制到目标位置的过程,不会改变源位置的文件。
希望以上内容对你有帮助!如果还有其他问题,请随时提问。
