os.path.dirname(uuu file_uuu)返回空

2024-06-16 16:18:14 发布

您现在位置:Python中文网/ 问答频道 /正文

我想获取当前目录的路径,在该目录下执行.py文件。

例如,一个简单的文件D:\test.py,代码为:

import os

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

奇怪的是输出是:

D:\
test.py
D:\test.py
EMPTY

我期望从getcwd()path.dirname()得到相同的结果。

既然os.path.abspath = os.path.dirname + os.path.basename,为什么

os.path.dirname(__file__)

返回空?


Tags: 文件path代码pytestimport路径目录
3条回答
print(os.path.join(os.path.dirname(__file__))) 

你也可以用这种方法

也可以这样使用:

dirname(dirname(abspath(__file__)))

因为os.path.abspath = os.path.dirname + os.path.basename不成立。我们宁愿

os.path.dirname(filename) + os.path.basename(filename) == filename

dirname()basename()只将传递的文件名拆分为组件,而不考虑当前目录。如果还想考虑当前目录,则必须显式地这样做。

要获取绝对路径的dirname,请使用

os.path.dirname(os.path.abspath(__file__))

相关问题 更多 >