在Perl中,FindBin
模块用于定位原始脚本的目录。在Python中获取此目录的规范方法是什么?
我见过的一些选项:
os.path.dirname(os.path.realpath(sys.argv[0]))
os.path.abspath(os.path.dirname(sys.argv[0]))
os.path.abspath(os.path.dirname(__file__))
答案 0 :(得分:13)
你可以试试这个:
import os
bindir = os.path.abspath(os.path.dirname(__file__))
这将为您提供当前文件目录的绝对路径。
答案 1 :(得分:8)
我不经常使用Python,所以我不知道是否有像FindBin这样的包但是
import os
import sys
bindir = os.path.abspath(os.path.dirname(sys.argv[0]))
应该有用。
答案 2 :(得分:3)
要使用Python 3.4+更新以前的答案,您现在可以:
import pathlib
bindir = pathlib.Path(__file__).resolve().parent
除了你会得到一个更好用的Path对象之外,它会给你相同的东西。