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

FileNotFoundError排查:文件存在但Python无法识别路径问题

解决FileNotFoundError:文件存在但Python读不到

问题代码

def extract_features(file_path):
    sr, y = wavfile.read(file_path)
    mfccs = librosa.feature.mfcc(y=y, sr=sr, n_mfcc=40) 
    return mfccs

features = []
labels = []

for i, row in data.iterrows(): 
    file_path = os.path.join(data_dir, row[0])
    repr(file_path)
    transcription = row[1]
    feature = extract_features(file_path) 
    features.append(feature) 
    labels.append(transcription)

报错信息

File "c:\Users\Adyatoni\OneDrive\Desktop\PROGRAMS\Beng tts 2", line 31, in <module>
    feature = extract_features(file_path) #The resulting feature matrix is stored in the feature variable.
  File "c:\Users\Adyatoni\OneDrive\Desktop\PROGRAMS\Beng tts 2", line 19, in extract_features
    sr, y = wavfile.read(file_path)
  File "C:\Users\Adyatoni\AppData\Local\Programs\Python\Python310\lib\site-packages\scipy\io\wavfile.py", line 647, in read
    fid = open(filename, 'rb')
FileNotFoundError: [Errno 2] No such file or directory: 'C:\\Users\\Adyatoni\\OneDrive\\Desktop\\PROGRAMS\\Bengali tts audio\\ bin_0834_0030520634.wav'

问题情况

文件确实在报错的路径里,但Python就是无法识别。已经试过打印file_path,显示的路径和报错里的一致;尝试用librosa替代wavfile提取特征也没解决,但这个路径在其他程序里能正常使用。

解决办法

1. 清理文件名的多余空格

看报错路径,bin_0834_0030520634.wav前面多了一个空格,大概率是row[0]里的文件名开头带了空格,拼接路径时去掉首尾空格即可:

file_path = os.path.join(data_dir, row[0].strip())

2. 提前校验路径合法性

在调用提取函数前加个判断,确认路径真实存在,方便快速定位问题:

file_path = os.path.join(data_dir, row[0].strip())
if not os.path.exists(file_path):
    print(f"找不到该路径:{file_path}")
    continue
feature = extract_features(file_path)

3. 处理OneDrive的同步/权限问题

OneDrive路径容易出现同步延迟或权限限制,试试这些操作:

  • 等待OneDrive完全同步,确保文件不是“正在同步”状态
  • 把音频文件复制到本地非OneDrive目录,再测试读取
  • 以管理员身份运行Python脚本,避免权限不足

4. 彻底替换为librosa读取

既然其他程序能识别路径,直接用librosa替代scipy的wavfile,注意两者返回值顺序相反:

def extract_features(file_path):
    y, sr = librosa.load(file_path)  # librosa返回顺序是y在前、sr在后,和wavfile相反
    mfccs = librosa.feature.mfcc(y=y, sr=sr, n_mfcc=40) 
    return mfccs

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 23:22:52