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

VSCode Python交互式窗口可识别文件 主py文件运行报FileNotFoundError

问题原因及修复方案

直接错误:路径字符串嵌套了多余的双引号

你代码中构造路径的代码行存在语法错误:

fullName = f'"bearingset/{fileName}"'

这行代码生成的路径前后多包裹了一层双引号,实际传入pd.read_csv()的路径值是带引号的"bearingset/health_20_0.csv",系统会把引号当成文件名的一部分,自然找不到对应文件。
VSCode交互式窗口运行正常大概率是你调试过程中手动修改过路径变量,或者分步执行时跳过了错误的路径构造步骤。

潜在问题:执行脚本时工作目录与预期不一致

VSCode Python交互式窗口默认工作目录为你打开的项目根目录,而单独执行.py文件时,工作目录取决于你执行脚本时的终端所在目录、IDE的运行配置项:

  • 如果你在其他目录下通过终端执行脚本,相对路径bearingset/xxx.csv会从当前终端目录开始查找,自然找不到文件
  • 即使.py文件和bearingset文件夹在同一目录,相对路径也会因为执行位置变化失效

修复方案

第一步:修正路径构造语法

删除多余的双引号,修改路径构造代码:

# 原错误代码
# fullName = f'"bearingset/{fileName}"'
# 修正后
fullName = f'bearingset/{fileName}'

第二步(推荐):使用绝对路径避免工作目录影响

通过__file__变量获取当前脚本的绝对路径,再拼接csv文件路径,完全不受执行位置影响:

import pandas as pd
import os

# 获取当前.py文件所在目录的绝对路径
current_dir = os.path.dirname(os.path.abspath(__file__))

nameList = ["health_20_0.csv",
            "comb_20_0.csv",
            "inner_20_0.csv",
            "outer_20_0.csv",
            "health_30_2.csv",
            "comb_30_2.csv",
            "inner_30_2.csv",
            "outer_30_2.csv",
            "ball_30_2.csv"
            ]

for fileName in nameList:
  # 拼接绝对路径,适配不同操作系统的路径分隔符
  fullName = os.path.join(current_dir, "bearingset", fileName)
  df = pd.read_csv(fullName)

  df = df.iloc[11:]
  df = df[df.columns[0]].apply(lambda x: [float(item) for item in x.split("\t")[0:-1]])
  df = pd.DataFrame(df.values.tolist())
  df.to_csv(fullName, index=False)

内容的提问来源于stack exchange,提问作者Yiğit Çatak

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 12:39:03