Python中等同于Perl的FindBin的是什么?
在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__))
3 个回答
8
我不太常用Python,所以不知道有没有像FindBin这样的包。不过
import os
import sys
bindir = os.path.abspath(os.path.dirname(sys.argv[0]))
应该可以用。
13
你可以试试这个:
import os
bindir = os.path.abspath(os.path.dirname(__file__))
这样做会给你当前文件所在目录的绝对路径。
6
关于之前的回答,使用Python 3.4及以上版本,你现在可以这样做:
import pathlib
bindir = pathlib.Path(__file__).resolve().parent
这样做的结果和之前一样,不过你会得到一个Path对象,这个对象用起来要方便很多。