是否有跨平台方式来获取控制台脚本的默认目录,就像使用sys.executable
以跨平台方式获取Python解释器的路径一样?
上下文:
有Python脚本运行各种工具,如pip using
子进程模块,最好确保运行随附的工具
Python的解释器用于运行此脚本。请注意
脚本可以在virtualenv中运行,但尚未激活
- ./venv/bin/python script.py
答案 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的帮助。