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

Python下载文件分类脚本二次运行出现WinError 3路径找不到错误求助

问题解决:Python文件分类脚本二次运行报错WinError3

错误原因

第二次运行脚本时,当前目录里只剩之前创建的分类文件夹,而你的脚本会遍历所有目录项(包括文件夹):

  • 文件夹没有扩展名,os.path.splitext()返回的extension是空字符串
  • 计算directory = extension[1:]就得到空字符串
  • 执行os.rename()时目标路径变成/{文件夹名},系统找不到空路径,触发错误

修复后的脚本

import os

# 获取当前目录下的所有项
items = os.listdir('.')

# 过滤出普通文件,排除文件夹
files = [item for item in items if os.path.isfile(item)]

# 按扩展名排序
files.sort(key=lambda x: x.split('.')[-1])

for file in files:
    name, extension = os.path.splitext(file)
    
    # 处理无扩展名的文件,用"无扩展名文件"作为目录名
    directory = extension[1:] if extension else "无扩展名文件"
    
    if not os.path.exists(directory):
        os.makedirs(directory)
    
    # 移动文件
    os.rename(file, f'{directory}/{file}')

关键改动说明

  • 新增os.path.isfile()过滤,只处理普通文件,跳过文件夹
  • 增加无扩展名文件的判断,避免生成空目录名
  • 变量名从files改为items再过滤,逻辑更清晰

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 16:30:58