微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何从运行位置获取python文件的绝对路径

如何解决如何从运行位置获取python文件的绝对路径

我试图获取从终端运行的python文件绝对路径,而不管运行该文件文件系统在哪里。到目前为止,我已经看过this,但是使用pathlib的答案无效,因为我将要演示:

path_test.py

内容
import pathlib
path_ = pathlib.Path(__file__).absolute().parent
print(path_)

如果您从同一目录或上方任何目录 调用python3 path_test.py,则会打印出预期的输出

/home/zaid/misc/import_test

现在在包含mkdir dirpath_test.py的同一目录cd中创建一个目录,现在调用python3 ../path_test.py

输出为:

/home/zaid/misc/import_test/dir/..

破坏 python的importlib功能,并且 是预期的输出

解决方法

解决方案是通过一些快速测试:

import os
import pathlib
path_ = pathlib.Path(os.path.abspath(__file__))

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。