Python 可以通过 shutil
模块来实现文件和目录的移动和复制操作。下面是详细的攻略,包括实现方法以及示例说明。
移动文件
移动文件可以使用 shutil.move()
方法,其语法为:
import shutil
shutil.move(src, dst)
其中,src
是源文件的路径,dst
是目标路径。如果 dst
是一个目录路径,则会将 src
移动到该目录下,文件名不变;如果 dst
是一个文件路径,则将 src
移动到该路径,并以 dst
的文件名命名。
例如,将文件 example.txt
从当前目录移动到 ./data/
目录下:
import shutil
shutil.move('example.txt', './data/')
复制文件
复制文件可以使用 shutil.copy()
或 shutil.copy2()
方法,其语法分别为:
import shutil
shutil.copy(src, dst)
shutil.copy2(src, dst)
两种方法的区别在于,shutil.copy2()
会复制源文件附带的元数据信息(例如修改时间和权限等),而 shutil.copy()
不会。
例如,将文件 example.txt
从当前目录复制到 ./backup/
目录下:
import shutil
shutil.copy('example.txt', './backup/')
移动目录
移动目录可以使用 shutil.move()
方法。与移动文件类似,如果目标路径是一个已存在的目录,则会将源目录移动到该目录下;如果目标路径是一个不存在的目录,则会将源目录重命名为该路径,并移动到其父目录下。
例如,将目录 ./data/
移动到 ./backup/
目录下:
import shutil
shutil.move('./data/', './backup/')
复制目录
复制目录可以使用 shutil.copytree()
方法,其语法为:
import shutil
shutil.copytree(src, dst)
其中,src
是源目录,dst
是目标路径。该方法会将 src
目录及其子目录和文件复制到 dst
目录中。
例如,将目录 ./data/
复制到 ./backup/
目录下:
import shutil
shutil.copytree('./data/', './backup/data/')
以上就是 Python 中移动或复制文件和目录的攻略,如果有更多需求可以查看 shutil 文档 以获得更多方法和选项。