Python获得项目路径

大家熟知的,肯定是path = os.getcwd()这个写法,这个可以直接给出当前工作路径。

但是在Pycharm中Run一个Flask项目的时候,会发现这个getcwd的返回值很奇怪——"C:\Program Files\Java\jdk1.8.0_91\jre\bin"
如下图

Python获得项目路径_第1张图片

【单文件,非项目情况getcwd正常

Python获得项目路径_第2张图片
Paste_Image.png

后来参考Stackoverflow得出结果就是默认Flask项目的Run的配置里没有Working directory。就如下图

Python获得项目路径_第3张图片
Paste_Image.png

所以把它写上就好了。

当然我当时就换了一个思路——即便工作区不正确,那文件所在目录肯定还是工作区,那我就直接获取文件目录即可。

于是乎就有了这一句——path = os.path.split(os.path.abspath(__file__))[0]

经过测试,这句即便是错误的工作区下也能正常获取文件目录(绝对路径)

你可能感兴趣的:(Python获得项目路径)