在 Python 中,可以使用 shutil.move() 方法来实现文件的剪切(移动)​操作。它会将文件从一个路径移动到另一个路径,如果目标路径是目录,则文件会被移动到该目录下并保持原名;如果目标路径包含新文件名,则文件会被移动并重命名。

​**方法 1:使用 shutil.move()**​

import shutil

# 源文件路径
src_path = "path/to/source/file.txt"
# 目标路径(可以是目录或新文件路径)
dst_path = "path/to/destination/"

# 移动文件(剪切)
shutil.move(src_path, dst_path)
示例
  • 移动到目录​(保持原名):
    shutil.move("data/file.txt", "backup/")  # 文件会被移动到 backup/file.txt
  • 移动并重命名​:
    shutil.move("data/file.txt", "backup/new_name.txt")  # 文件会被移动到 backup/new_name.txt

方法 2:使用 os.rename()(仅限同一磁盘)​

如果源路径和目标路径在同一个文件系统(磁盘)​上,也可以使用 os.rename()

import os

src_path = "path/to/source/file.txt"
dst_path = "path/to/destination/file.txt"

os.rename(src_path, dst_path)

⚠️ ​注意​:如果跨磁盘移动,os.rename() 会报错 OSError,此时必须用 shutil.move()

总结

方法 适用场景 跨磁盘支持 是否自动覆盖
shutil.move() 通用(推荐) ✅ 支持 ✅ 是
os.rename() 仅限同一磁盘 ❌ 不支持 ❌ 可能报错

推荐使用 ​**shutil.move()**,因为它更通用且能处理跨磁盘的情况。

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐