Python 使用 os.rename() 重命名文件和目录
⚡ 智能摘要
Python 使用 os.rename() 重命名文件和目录。在这里,您将学习 os.rename()、os.renames()、shutil.move() 和 pathlib Path.rename(),以及如何重命名目录和批量重命名多个文件,并附有清晰的示例。
Python 重新命名文件
Python 重命名()文件 是一种用于重命名文件或目录的方法 Python 编程。 Python 可以通过传递两个名为 src(源)和 dst(目标)的参数来声明 rename() 文件方法。
句法
这是 os.rename() 方法的语法
os.rename(src, dst)
参数
源代码: Source 是文件或目录的名称。它必须已经存在。
夏令时: 目标是您要更改的文件或目录的新名称。
计费示例:
import os os.rename('guru99.txt','career.guru99.txt')
让我们详细看一下例子
您可以重命名原始文件,我们已将文件名从“Guru将“99.txt”改为“Career.guru99.txt”。
- 要重命名“guru99.txt”文件,我们将使用 OS 模块中的“重命名功能”
- 因此,当执行代码时,您可以观察到在面板右侧创建了一个新文件“career.guru99.txt”,我们将其重命名为原始文件。
以下是完整的代码
import os import shutil from os import path def main(): # make a duplicate of an existing file if path.exists("guru99.txt"): # get the path to the file in the current directory src = path.realpath("guru99.txt"); # rename the original file os.rename('guru99.txt','career.guru99.txt') if __name__ == "__main__": main()
如何重命名目录 Python
os.rename() 方法不仅可以重命名文件,还可以重命名目录。将当前文件夹名称作为源名称传递,将新名称作为目标名称传递。
import os os.rename("old_directory", "new_directory")
如果源目录不存在, Python 会引发 FileNotFoundError 错误,因此最好先检查路径。
使用 os.renames() 重命名文件
os.renames() 方法会重命名文件,并自动创建目标路径中缺失的中间目录。它还会删除源路径中遗留的空目录。
import os os.renames("guru99.txt", "archive/2024/career.txt")
如果 archive 和 2024 文件夹尚不存在,则会自动创建它们。
使用 shutil.move() 重命名文件
shutil.move() 函数将文件移动到新位置,当目标位置与当前目录相同时,该函数会有效地重命名文件。
import shutil shutil.move("guru99.txt", "career.guru99.txt")
与 os.rename() 不同,shutil.move() 还可以将文件移动到不同的文件系统或驱动器上。
使用 pathlib 模块重命名文件
In Python 从 3.4 及更高版本开始,pathlib 模块提供了一个面向对象的 Path.rename() 方法,用于重命名文件。
from pathlib import Path file = Path("guru99.txt") file.rename("career.guru99.txt")
rename() 方法返回一个新的 Path 对象,该对象指向重命名后的文件。
如何在……中重命名多个文件 Python
要一次性重命名多个文件,请使用 `os.listdir()` 遍历目录中的文件,并对每个文件调用 `os.rename()`。以下示例为每个文件添加了一个数字前缀。
import os folder = "myfiles" for count, filename in enumerate(os.listdir(folder)): new_name = f"file_{count}.txt" os.rename(os.path.join(folder, filename), os.path.join(folder, new_name))
使用 os.path.join() 可以保证代码在任何操作系统上都能正常运行。


