找回密码
 立即注册
搜索
到手67.99元!阿里云轻量2核2G云服务器
查看: 4|回复: 0

Python重命名文件/文件夹两种常用方法

[复制链接]

708

主题

0

回帖

11

积分

管理员

积分
11
发表于 昨天 09:54 | 显示全部楼层 |阅读模式
一、os 模块(内置,最常用)
1. 重命名文件
  1. import os

  2. # 原文件路径、新文件名路径
  3. old_path = r"D:/test/1.txt"
  4. new_path = r"D:/test/日记.txt"

  5. os.rename(old_path, new_path)
复制代码

2. 重命名文件夹
  1. import os

  2. old_dir = r"D:/old文件夹"
  3. new_dir = r"D:/新文件夹"
  4. os.rename(old_dir, new_dir)
复制代码

补充常用细节
同目录只改名字:路径前缀一致,只改末尾名称
跨路径移动 + 改名:等同于剪切并重命名
报错场景:
新名称已存在:会抛出 FileExistsError
原文件不存在:FileNotFoundError
捕获异常写法(稳妥版)
  1. import os

  2. try:
  3.     os.rename("a.jpg", "photo.jpg")
  4. except FileNotFoundError:
  5.     print("原文件不存在")
  6. except FileExistsError:
  7.     print("新名字已经被占用")
复制代码


二、pathlib
文件重命名
  1. from pathlib import Path

  2. old_file = Path(r"D:/demo/aaa.png")
  3. new_file = Path(r"D:/demo/头像.png")

  4. old_file.rename(new_file)
复制代码

文件夹重命名
  1. from pathlib import Path

  2. Path("旧目录").rename("新目录")
复制代码

三、批量重命名示例(实用场景)
把文件夹内所有 txt 文件统一改名:
  1. import os

  2. folder = r"D:/文档"
  3. for idx, name in enumerate(os.listdir(folder)):
  4.     if name.endswith(".txt"):
  5.         old = os.path.join(folder, name)
  6.         new = os.path.join(folder, f"笔记_{idx+1}.txt")
  7.         os.rename(old, new)
复制代码

关键注意事项
Windows 路径建议加前缀 r"" 避免转义字符问题
重命名前尽量关闭正在占用该文件的软件,否则权限报错
pathlib 兼容性更好,日常优先选用
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|skypiea

GMT+8, 2026-7-29 06:33 , Processed in 0.041477 second(s), 19 queries .

Powered by skypiea

快速回复 返回顶部 返回列表