import os
import sys
print('#' *10)
print(os.path.abspath(os.path.dirname('__file__')))
print('#' *10)
print(os.path.abspath('__file__'))
print('#' *10)
print(os.path.dirname(os.path.abspath(sys.argv[0])))
print('#' *10)
print(sys.argv[0])
print('#' *10)
print(os.getcwd())
输出:
13212@7C98:~$ python PycharmProjects/test/main.py
##########
/home/russell
##########
/home/russell/__file__
##########
/home/russell/PycharmProjects/test
##########
PycharmProjects/test/main.py
##########
/home/russell
注意:pathlib.Path.cwd()得到的是工作目录,即在哪个目录下运行,不是代码所在项目的位置。
在使用cwd()需要注意,因此可以使用以上sys.argv()来确定绝对位置。
该博客展示了如何使用Python的os和sys模块获取当前脚本的目录路径、文件路径以及工作目录。通过os.path.abspath()和sys.argv[0],可以准确地定位到代码文件的位置,而os.getcwd()则返回运行脚本时的工作目录。强调了在获取工作目录时应注意它可能不同于代码所在的项目路径。
1785

被折叠的 条评论
为什么被折叠?



