获取Python控制台脚本默认目录的跨平台方式?

时间:2014-02-21 14:22:51

标签: python cross-platform environment

是否有跨平台方式来获取控制台脚本的默认目录,就像使用sys.executable以跨平台方式获取Python解释器的路径一样?

上下文:
有Python脚本运行各种工具,如pip using 子进程模块,最好确保运行随附的工具 Python的解释器用于运行此脚本。请注意 脚本可以在virtualenv中运行,但尚未激活 - ./venv/bin/python script.py

1 个答案:

答案 0 :(得分:0)

是的,sysconfig模块通过get_path()函数提供此类API:

Linux的:

pdobrogost@host:~/tmp$ venv/bin/python -c "import sysconfig; print(sysconfig.get_path('scripts'))"
/home/users/pdobrogost/tmp/venv/bin

视窗:

X:\>venv\Scripts\python.exe -c "import sysconfig; print(sysconfig.get_path('scripts'))"
X:\venv\Scripts

参考文献:
https://groups.google.com/forum/#!topic/comp.lang.python/s3vLkVy2xJk
https://mail.python.org/pipermail/distutils-sig/2014-February/023867.html

感谢Ned Batchelder,Oscar Benjamin,Paul Moore和Vinay Sajip的帮助。