开发者社区> 问答> 正文

vscode 绝对路径和相对路径的问题?报错

一直用sublime text,最近想转到vscode,刚用发现一个问题(感觉我的问题放在这有点低级,但是我没别的地方去了,原谅我):

首先是同一个文件夹下,sublime text可以使用相对路径,而vscode使用相对路径却报错:FileNotFoundError: [Errno 2] No such file or directory: 'gaos.txt' 。之后vscode使用绝对路径又正常。希望有了解的大佬帮看看,我实在不想每次都敲绝对路径。。

sublime:

vscode:

展开
收起
爱吃鱼的程序员 2020-06-06 20:23:31 2617 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB
                        <p>老哥不知道你解决没有,我折腾了两天,终于偶然发现了解决办法。上面那个老哥说的没错,确实是按 .vscode文件夹为相对路径的。下面的步骤就是在新的工作区对应的文件夹里生成一个新的 .vscode文件夹和launch.json的方法,不生成新的话只能按原来的 .vscode文件夹判断,运行文件和原 .vscode文件夹不在一个文件夹时用相对路径就会繁琐一些。不过生成新的 .vscode文件夹后还得配合左下角“选择并启动调试配置”,选上相应的工作区,才能根据新的 .vscode文件夹来判断相对路径,编程的时候才能使用最简单的相对路径。具体如下:</p>
    

    1. 把要运行的程序文件所在的那个文件夹设为工作区。

     

    2. 运行一个在此工作区的小程序,然后点左下角“选择并启动调试配置”

    左下角那个

     

    3.之后在窗口上端会弹出个菜单,下拉至底,选择添加配置(此工作区名)...此工作区名,我这里是py4e

     

    4. 然后会选一个运行的环境,你用什么语言选哪个。

     

    5. 再选左下角“选择并启动调试配置”,这时在上方弹出的菜单中就有这个工作区对应的选项了,我照着之前工作区的样子选的python: current file(此工作区)这个选项。

    这之后就能使用相对路径了。切换工作区的话,也要相应的更改“选择并启动调试配置”。不然的话,vscode就会一直按这个地方所指的工作区来找相对路径。

     

                            回复晚了,确实我发现也只能通过每个项目单独建立工作区这样的方式才能引用相对路径,麻烦也不是很麻烦,但就是感觉要多走一步,不像sublime那样类似全局变量,不管在哪个文件夹下,无脑ctrl+b就能运行,大概是现在人都比较懒吧,哈哈哈
                        
    
                        <p>好像是以os.getcwd()为相对路径的,用vscode的话以你的目录结构应该改成'vscode/test/gaos.txt',你试试看了</p>
    
                    
    
                            谢谢回复,在vscode中好像不能默认当前文件路径,只能通过工作区配置,没有过c++这可能和vs studio的方式差不多吧
                        
    
                        <p>接顶楼。编辑launch.json,在configuration中使用参数"cwd": "${fileDirname}",这样在debug时可以切换到当前文件所在的目录,使用相对路径。</p>
    
    2020-06-06 20:23:48
    赞同 展开评论 打赏
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载