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

疑问:try-except-else循环为何总是读取french_words.csv文件?

问题分析与解决

你的代码逻辑本身是成立的:try块尝试读取words_to_learn.csv,触发FileNotFoundError时就读取french_words.csv,否则使用words_to_learn.csv的数据。但程序总是走except分支,大概率是路径或文件存在性问题,以下是具体排查方向:

排查步骤

  1. 确认当前工作目录
    程序的相对路径基于运行时的当前工作目录,而非代码文件所在目录。可以在代码开头加入以下代码查看当前路径:
import os
print(os.getcwd())

检查输出的目录下是否存在data文件夹,且data内确实有words_to_learn.csv。

  1. 检查文件名与路径拼写
  • 确认文件名完全一致:比如是否误写为word_to_learn.csv,或者大小写不匹配(Linux/macOS区分文件名大小写,Windows不区分)。
  • 确认data文件夹存在,且路径层级正确(比如是否多/少了一层目录)。
  1. 捕获所有异常查看详情
    暂时修改except块,捕获所有异常并打印错误信息,确认具体报错原因:
import pandas

french = {}
try:
    data = pandas.read_csv("data/words_to_learn.csv")
except Exception as e:
    print(f"读取失败原因: {e}")
    org_data = pandas.read_csv("data/french_words.csv")
    french = org_data.to_dict(orient="records")
else:
    french = data.to_dict(orient="records")

print(french)

如果报错不是FileNotFoundError,说明文件存在但读取时出错(比如文件损坏、格式不符合CSV规范),需要修复words_to_learn.csv文件。

  1. 尝试绝对路径
    用文件的绝对路径替代相对路径测试,比如:
data = pandas.read_csv("/Users/yourname/project/data/words_to_learn.csv")

如果能正常读取,说明相对路径的工作目录问题导致找不到文件。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.09 20:40:06