You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将文件重命名为所在文件夹同名?Python代码报错求助

解决SRT文件重命名的文件未找到问题

你的代码报错核心原因有两个:

  1. os.walk返回的file只是纯文件名,不是文件的完整路径,os.rename会默认在当前工作目录查找该文件,自然找不到子文件夹里的目标文件。
  2. 新文件名没加上.srt后缀,不符合你保留后缀的需求。

修复后的代码如下:

import os

path = os.getcwd()

for (dirname, dirs, files) in os.walk(path):
    for file in files:
        if file.endswith('.srt'):
            folder_name = os.path.basename(dirname)
            # 拼接文件的完整旧路径和新路径
            old_file_path = os.path.join(dirname, file)
            new_file_path = os.path.join(dirname, f"{folder_name}.srt")
            os.rename(old_file_path, new_file_path)

代码说明:

  • 用os.path.join拼接目录名和文件名,得到文件的完整绝对路径,确保os.rename能准确定位到文件。
  • 新文件名通过f"{folder_name}.srt"保留了.srt后缀,符合你的需求。

内容的提问来源于stack exchange,提问作者Brunooo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 23:49:50