小编典典

如何在 Python 中移动文件?

all

我查看了 Pythonos界面,但找不到移动文件的方法。$ mv ...我将如何在 Python 中做相当于?

>>> source_files = '/PATH/TO/FOLDER/*'
>>> destination_folder = 'PATH/TO/FOLDER'
>>> # equivalent of $ mv source_files destination_folder

阅读 182

收藏
2022-02-25

共1个答案

小编典典

os.rename(),
os.replace(),
shutil.move()

都使用相同的语法:

import os
import shutil

os.rename("path/to/current/file.foo", "path/to/new/destination/for/file.foo")
os.replace("path/to/current/file.foo", "path/to/new/destination/for/file.foo")
shutil.move("path/to/current/file.foo", "path/to/new/destination/for/file.foo")

请注意,您必须file.foo在源参数和目标参数中都包含文件名 ( )。如果更改,文件将被重命名和移动。

另请注意,在前两种情况下,创建新文件的目录必须已经存在。在 Windows
上,不得存在具有该名称的文件,否则将引发异常,但os.replace()即使在这种情况下也会以静默方式替换文件。

正如在其他答案的评论中所指出的那样,在大多数情况下shutil.move只是调用。os.rename但是,如果目标位于与源不同的磁盘上,它将改为复制然后删除源文件。

2022-02-25