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

Python重命名test文件夹文件时遇WindowsError: [Error 2]文件未找到错误求助

解决批量重命名时出现的WindowsError: [Error 2] 问题

嘿,我来帮你搞定这个重命名时的「找不到文件」问题!这个错误我之前也踩过坑,大多是路径处理不当或者没考虑文件状态导致的,咱们一步步排查解决:

  • 一定要用完整文件路径
    很多新手容易犯的错:遍历test文件夹时只拿到了文件名,直接用os.rename(filename, ...),但系统会在当前运行代码的目录里找这个文件,而不是test文件夹里。正确的做法是拼接文件夹路径和文件名,生成完整的旧路径和新路径:

    import os
    folder_path = 'test'
    for idx, filename in enumerate(os.listdir(folder_path), start=1):
        # 拼接完整的旧文件路径
        old_full_path = os.path.join(folder_path, filename)
        # 保留原文件后缀(如果不需要可以去掉这行)
        file_ext = os.path.splitext(filename)[1]
        # 拼接新的完整路径
        new_full_path = os.path.join(folder_path, f"{idx}{file_ext}")
        os.rename(old_full_path, new_full_path)
    
  • 跳过子文件夹,只处理文件
    如果test文件夹里还有子文件夹,os.listdir会把文件夹也列出来,尝试重命名文件夹可能触发错误,或者误把文件夹当成文件处理。加个判断只处理文件:

    import os
    folder_path = 'test'
    count = 1
    for filename in os.listdir(folder_path):
        full_path = os.path.join(folder_path, filename)
        # 只对文件执行重命名操作
        if os.path.isfile(full_path):
            file_ext = os.path.splitext(filename)[1]
            new_full_path = os.path.join(folder_path, f"{count}{file_ext}")
            os.rename(full_path, new_full_path)
            count += 1
    
  • 检查文件是否被占用
    如果test里的某个文件正在被其他程序打开(比如图片查看器、Word),系统会锁定这个文件,导致重命名失败,也可能抛出「找不到文件」的错误。先把所有相关程序关掉,再运行代码试试。

  • 用绝对路径更稳妥
    有时候相对路径会因为代码运行的当前目录不是你预期的而出错,换成绝对路径就不会有这个问题:

    import os
    # 获取test文件夹的绝对路径
    folder_path = os.path.abspath('test')
    count = 1
    for filename in os.listdir(folder_path):
        full_path = os.path.join(folder_path, filename)
        if os.path.isfile(full_path):
            file_ext = os.path.splitext(filename)[1]
            new_full_path = os.path.join(folder_path, f"{count}{file_ext}")
            os.rename(full_path, new_full_path)
            count += 1
    

另外提一句:在Python 3里,WindowsError已经合并到OSError里了,但错误码2的含义还是「找不到指定文件」,所以上面的方案都适用。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.20 07:15:36