gpt4 book ai didi

python-3.x - 如何确定 pip3 为非用户安装安装二进制文件/脚本的位置?

转载 作者:行者123 更新时间:2023-12-03 23:03:22 24 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





Programmatically determine pip 'user install' location Scripts directory

(2 个回答)


去年关闭。




我可以使用 pip3 install --user mypackage 确定 pip 安装包二进制文件/脚本的位置使用:

$(python3 -m site --user-base)/bin
有没有机制可以确定在哪里 非用户 二进制文件/脚本得到安装(例如 pip3 install mypackage )得到安装?
请注意,我只对安装二进制文件/脚本的位置感兴趣,而不对安装库代码的位置感兴趣。
更新:
目标是确保 PATH 环境变量包含安装二进制文件/脚本的文件夹,因为这在过去给我造成了一些问题。
更新 2:
$ python3 -c "import sysconfig; print(sysconfig.get_path('scripts'))"
/usr/local/Cellar/python@3.8/3.8.5/Frameworks/Python.framework/Versions/3.8/bin

$ python3 -c "from pip._internal.locations import bin_py; print(bin_py)"
/usr/local/Cellar/python@3.8/3.8.5/Frameworks/Python.framework/Versions/3.8/bin
但是,pip3 安装到 /usr/local/bin注意:
$ which pip3
/usr/local/bin/pip3
$ which python3
/usr/local/bin/python3

最佳答案

这已经在这里得到了回答(但我不能“关闭重复”,因为有赏金):
https://stackoverflow.com/a/62167797

我相信规范的方式(向前)是使用 sysconfig.get_path(...) .根据具体需要,可以组合方案和名称。所以也许对于您的确切用例:

import sysconfig

scripts_path = sysconfig.get_path('scripts')
print(scripts_path)
作为 shell 的单衬:
python -c "import sysconfig; print(sysconfig.get_path('scripts'))"

其他可能有助于识别正确目录的内容:
python -m site
python -m sysconfig

引用文献 :
  • https://docs.python.org/3.8/library/sysconfig.html#installation-paths
  • https://docs.python.org/3.8/library/sysconfig.html#using-sysconfig-as-a-script
  • https://docs.python.org/3.8/library/site.html#command-line-interface
  • https://discuss.python.org/t/proper-way-to-determine-install-location-of-console-scripts/7188
  • 关于python-3.x - 如何确定 pip3 为非用户安装安装二进制文件/脚本的位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64183571/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com