问题背景
相信大家都遇到过一个问题:一个项目在vscode(或pycharm)明明可以正常运行,但当在pycharm(或vscode)中时,却经常会出现路径错误。起初,对于这个问题,我也是一知半解,因为项目都比较小且跑在本地,故而一气之下全部使用了绝对路径。
但踏破铁鞋无觅处,得来全不费工夫,后来在csdn偶然看到了一篇讲vscode和pycharm工作路径的文章,后经个人理解整理如下。
原因
在vscode中运行项目时,当前工作路径是项目根目录;而在pycharm中,当前工作目录则是当前运行脚本的直接父目录。以下是在vscode和pycharm获取同一文件的目录和工作目录的演示
vscode:
pycharm:
我们可以清楚的看到在执行 `os.getcwd()`获取当前工作目录时,vscode给出的结果是D:\Dfile\project\differential_attention;而pycharm中给出的路径是D:\Dfile\project\differential_attention\data_generate;
总结
通过以上演示,我们可以很直观的知道:在vscode中运行项目时,当前工作路径是项目根目录;而在pycharm中,当前工作目录则是当前运行脚本的直接父目录。所以,当大家因为某些不可抗力的原因,要在不同平台运行自己项目的代码时,请小心路径问题!
如果这篇文章对您有所帮助的话,请点赞&收藏!!感谢!!!!