python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > Python FileNotFoundError Errno 2

Python中“FileNotFoundError: [Errno 2] No such file or directory”的解决办法

作者:星哲最开心

最近在使用vscode写代码(python)时发现使用相对路径读取文件以及写入文件时,想要直接在当前目录下读写一直提示没有该文件,需要返回根目录,所以本文给大家介绍了Python中“FileNotFoundError: [Errno 2] No such file or directory”的解决办法,需要的朋友可以参考下

写在前面

最近在使用 vscode 写代码 (python) 时发现使用相对路径读取文件以及写入文件时,想要直接在当前目录下读写一直提示没有该文件,需要返回根目录。并且使用 vscode 自带调试"F5"以及 Code Runner 扩展即右上角三角形都是如此。参考了许多资料,终于解决了问题。

所用测试文件

这是我的文件结构

test.py

with open("./test.txt") as f:
    text = f.read()

print(text)` 

test.txt

This is a passage for demonstration.

"F5"调试

调试报错

[Errno 2] No such file or directory: ‘./test.txt’

解决方法

在所配置的 launch.json 文件中的 configurations 列表中加入这一行,记得在上一行末尾加上一个逗号 。

"cwd": "${fileDirname}"

再来看一下效果。现在可以正常运行了。

在vscode中运行项目时,当前工作路径是项目根目录;而在pycharm中,当前工作目录则是当前运行脚本的直接父目录。

Code Runner调试

调试报错

FileNotFoundError: [Errno 2] No such file or directory: ‘./test.txt’

解决方法

打开扩展"Code Runner"→打开扩展设置→随便找到一个“在_setting.json_中编辑”→把下面三行加到最后面(大括号里,第一行应该在之前安装扩展时就改过了 )

“code-runner.runInTerminal”: true,
“code-runner.fileDirectoryAsCwd”: true,
“python.terminal.executeInFileDir”: true`

当然,也可以在扩展中找到对应的选项并打上勾

在 Code Runner 的扩展设置中找到第二行

在 python 的设置中找到第三行

具体操作:文件→首选项→设置→扩展→ Python →找到对应项

来看一下效果。现在可以正常运行了。

这里解决的思路跟第一种不一样,我们可以看到,它还是直接进入了目标文件夹里(即图片中的 test 文件夹)。实际上,即使你啥都没修改,只要你在每次使用 Code Runner 调试时, cd 一下进入对应的文件夹也还是可以正常运行的。

以上就是Python中“FileNotFoundError: [Errno 2] No such file or directory”的解决办法的详细内容,更多关于Python FileNotFoundError Errno 2的资料请关注脚本之家其它相关文章!

您可能感兴趣的文章:
阅读全文