专业网站建设品牌,十四年专业建站经验,服务6000+客户--广州京杭网络
免费热线:400-683-0016      微信咨询  |  联系我们

Python os.rename()函数:重命名文件或目录

当前位置:网站建设 > 技术支持
资料来源:网络整理       时间:2023/2/17 15:20:58       共计:3607 浏览
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 <module>
    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 <module>
    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("目录不存在")
版权说明:
本网站凡注明“广州京杭 原创”的皆为本站原创文章,如需转载请注明出处!
本网转载皆注明出处,遵循行业规范,如发现作品内容版权或其它问题的,请与我们联系处理!
欢迎扫描右侧微信二维码与我们联系。
·上一条:JSP JSTL <c:if>标签:条件判断标签 | ·下一条:Python os.remove()函数:删除文件

Copyright © 广州京杭网络科技有限公司 2005-2025 版权所有    粤ICP备16019765号 

广州京杭网络科技有限公司 版权所有