使用shutil模块在Python中实现递归复制和移动文件
使用shutil模块可以方便地实现递归复制和移动文件。递归复制指的是将目录中的所有文件和子目录都复制到目标目录中,而递归移动则是将目录中的所有文件和子目录都移动到目标目录中。以下是递归复制和移动文件的示例代码:
import os import shutil # 定义源目录和目标目录 src_dir = 'pidancode.com' dst_dir = 'my_folder' # 递归复制文件 shutil.copytree(src_dir, os.path.join(dst_dir, os.path.basename(src_dir))) # 递归移动文件 shutil.move(src_dir, dst_dir)
在这个例子中,我们首先定义了源目录和目标目录。然后,我们使用shutil.copytree()函数将源目录递归地复制到目标目录中。os.path.join()函数用于将目标目录和源目录的基本名称连接起来,以创建完整的目标路径。os.path.basename()函数用于获取源目录的基本名称。
接下来,我们使用shutil.move()函数递归地将源目录移动到目标目录中。该函数还可以用于重命名文件或目录。
请注意,在递归复制或移动文件时,目标目录必须不存在。如果目标目录已经存在,则需要在目标目录中创建一个新的目录,然后将源目录复制或移动到该目录中,以避免覆盖已经存在的文件。
相关文章