0%

Python中的当前工作路径与当前脚本文件所在路径

背景

在编写Robot Framework测试库的过程中,需要将自建库的init.py脚本文件所在路径添加进系统路径,Python才能够识别库中的各个模块。

结论

假如,在桌面创建了一个名为test.py的Python脚本,并输入如下代码:

1
2
3
4
import os

print(os.path.dirname(__file__))
print(os.getcwd())

然后,我们在电脑中的另一个位置F:\04_Individual\03_Tech\00_Hexo打开终端,并运行刚刚创建的脚本test.py,会得到如下结果:
1
2
3
4
ShiPeng@HelloWorld MINGW64 /f/04_Individual/03_Tech/00_Hexo
$ python3 -u "c:\Users\ShiPeng\Desktop\test.py"
c:\Users\ShiPeng\Desktop
F:\04_Individual\03_Tech\00_Hexo

可以发现,os.getcwd()获取的是当前工作目录(即工程目录),而os.path.dirname(__file__)获得的才是当前Python脚本所在目录(不包含文件名)。

参考

  1. 浅析python3中的os.path.dirname的使用

Thank you for your donate!