关于vscode使用相对路径运行代码时找不到响应文件No such file or directory,修改用于debugger的launch.json文件不能完全解决所有的问题时

溯因:报错的原因是,使用python extension进行代码解析的时候默认的根目录为.vscode所在的目录,如果需要使用相对路径,所有的路径都需要相对与.vscode目录进行相对才有效,这是python extension本身造成的问题.目前无法直接彻底解决,期待工程师的fix!

表现:vscode 运行/调试代码有三种方式,因而将造成这种错误:

  • ①在终端运行python文件,将调用python扩展进行运行,会带来NO such file 的问题
  • ②配置cmd终端,通过在settings.json中添加 "terminal.integrated.shell.windows": "C:\\WINDOWS\\System32\\cmd.exe",即cmd.exe的位置,即可在vscode终端集成命令行,这样使用 python XX.py 运行文件不会带来No such File 问题
  • ③大部分网友提出的"半程"解决方案,对python程序进行debuge时候,需要配置 launch.json文件,在其中加入"cwd": "${fileDirname}",即可将当前根目录转至文件所在绝对路径,使用Debugger时候,不会因为相对路径而报错,注意:只是在debugger时候!!!!

解决措施(一):较为繁琐但是可以使用python扩展运行时报错问题的方法(几行代码):在python程序开头:

(将目录改成当前program的绝对路径)

import os
import sys
os.chdir(sys.path[0])

解决措施(二):半程解决方案的基础上改进

改进动机:由于我们并不希望所有程序都去调试运行,故:
哈哈哈哈,皮一下:试试"以非调试方式运行",即可.

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值