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

Python的readFile函数触发FileNotFoundError,同目录文件无法读取求助

解决文件找不到的排查步骤

你的代码逻辑本身没有问题,出现File not found的核心原因大概率是实际运行时的工作目录和你预期的不一致,按以下步骤逐一排查:

1. 先确认当前工作目录

在调用readFile前添加代码,打印当前Python进程的工作路径,验证是否和文件所在目录匹配:

import os
print(os.getcwd())  # 输出当前工作路径
WordList = readFile("wordList.txt")
print(WordList)

如果输出的路径不是你的代码和wordList.txt所在的文件夹,那问题就出在这里。

2. 用绝对路径直接测试

跳过工作目录的问题,直接使用文件的绝对路径调用函数,验证是否能正常读取:

# Windows系统注意转义反斜杠,或用原始字符串
WordList = readFile(r"C:\你的代码目录\wordList.txt")
# Linux/macOS系统直接写绝对路径
WordList = readFile("/home/你的用户名/代码目录/wordList.txt")

如果这样能成功读取,说明确实是工作目录的问题。

3. 修正VS Code的运行工作目录

VS Code默认以当前打开的文件夹根目录作为运行工作目录,如果你打开的是上级文件夹,而代码和文件在子目录里,就会找不到文件:

  • 直接打开代码文件所在的文件夹作为VS Code工作区,再运行代码;
  • 或者在.vscode/launch.json中配置cwd参数,强制指定为当前代码文件所在目录:
{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Python: Current File",
            "type": "python",
            "request": "launch",
            "program": "${file}",
            "cwd": "${fileDirname}"
        }
    ]
}

4. 检查文件的真实名称

部分系统会默认隐藏文件扩展名,比如你看到的wordList.txt实际可能是wordList.txt.txt:

  • Windows:打开文件资源管理器,开启「显示文件扩展名」选项,查看真实文件名;
  • Linux/macOS:在终端用ls命令查看文件列表,同时注意文件名大小写(这类系统区分大小写,WordList.txt和wordList.txt是两个不同文件)。

5. 检查文件权限(Linux/macOS)

如果是类Unix系统,确保当前用户有该文件的读取权限:

ls -l wordList.txt

如果权限不包含读权限,执行以下命令添加:

chmod +r wordList.txt

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 14:39:56