怎么给python文件重命名_Python os.rename()函数:重命名文件或目录

os 模块提供了重命名文件和目录的函数 rename(),如果指定的路径是文件,则重命名文件;反之,如果执行的路径是目录,则重命名目录。

rename() 函数的基本语法格式如下:

os.rename(src , dst)

其中,src 参数用于指定要进行重命名的目录或文件;dst 参数用于指定重命名后的目录或文件。

例如,将 a.txt 文件(完整路径为:D:\demo\a.txt)重命名为 b.txt 文件,可以执行如下代码:

import os

os.rename("D:\\demo\\a.txt","D:\\demo\\b.txt")

print("重命名完毕")

通过执行上面代码,即可成功将位于 D:\\demo 下的 a.txt 文件重命名为 b.txt。但是,如果 rename() 函数找不到目标文件或目录,将会抛出 FileNotFoundError 异常:

Traceback (most recent call last):

File "C:\Users\mengma\Desktop\demo.py", line 2, in

os.rename("D:\\demo\\a.txt","D:\\demo\\b.txt")

FileNotFoundError: [WinError 2] 系统找不到指定的文件。: 'D:\\demo\\a.txt' -> 'D:\\demo\\b.txt'

使用 rename()函数重命名目录和重命名文件基本相同,只需要将文件路径替换为目录路径即可。例如,将 D:\demo 目录重命名为 new 目录,可以执行如下代码:

import os

os.rename("D:\\demo","D:\\new")

print("重命名完毕")

同重命名文件名一样,当 rename() 找不到要重命名的目录时,也会抛出 FileNotFoundError 异常:

Traceback (most recent call last):

File "C:\Users\mengma\Desktop\demo.py", line 2, in

os.rename("D:\\demo","D:\\new") FileNotFoundError: [WinError 2] 系统找不到指定的文件。: 'D:\\demo' -> 'D:\\new'

注意,在对目录进行重命名时,只能修改最后一级的目录名称,也就是说,只能修改目录名,而不能移动它的位置。

如果想避免出现 FileNotFoundError 异常,可以在删除文件或目录时,先判断目标文件或目录是否存在,即如果存在才执行删除操作,执行代码如下:

import os

if os.path.exists("D:\\demo\\a.txt"):

os.rename("D:\\demo\\a.txt","D:\\demo\\b.txt")

print("文件重命名完毕")

除此之外,还可以使用 try except 语句避免出现 FileNotFoundError 异常,执行代码如下:

import os

try:

os.rename("D:\\demo","D:\\new")

print("重命名完毕")

except(FileNotFoundError):

print("目录不存在")

你可能感兴趣的:(怎么给python文件重命名)