• 【Python】自定义pip安装路径


    因为某些原因卸载了电脑上的python,重新安装之后发现,pip安装的目录是之前老版本的目录,有些库和电脑的内核不兼容,所以之前安装的库需要清理重新安装,固定一个目录安装,这样不会在重新安装python之后,再重新配置。

    自定义pip安装路径

    我们直接上手实操。

    1.查看目前pip使用的路径

    使用命令

    python -m site
    
    • 1
    sys.path = [
        '/Users/mac/Library/Python',
        '/Library/Frameworks/Python.framework/Versions/3.10/lib/python310.zip',
        '/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10',
        '/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/lib-dynload',
        '/Users/mac/Library/Python/3.10/lib/python/site-packages',
        '/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages',
    ]
    USER_BASE: '/Users/mac/Library/Python/3.10' (exists)
    USER_SITE: '/Users/mac/Library/Python/3.10/lib/python/site-packages' (exists)
    ENABLE_USER_SITE: True
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    返回的信息可以看出,我python新安装的目录是/Library/Frameworks/Python.framework/Versions/3.10,但是pip安装的目录是/Users/mac/Library/Python/3.10/lib/python/site-packages。
    我们需要做一下目录改变。

    2.改变pip的安装路径

    2.1 找到 site.py 文件

    使用 python -m site -help 命令,我们可以看到目前我们的site.py文件是在哪个位置:

    python -m site -help
    
    • 1

    最上面就是我们site.py文件的地址

    /Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site.py [--user-base] [--user-site]
    
    Without arguments print some useful information
    With arguments print the value of USER_BASE and/or USER_SITE separated
    by ':'.
    
    Exit codes with --user-base or --user-site:
      0 - user site directory is enabled
      1 - user site directory is disabled by user
      2 - user site directory is disabled by super user
          or for security reasons
     >2 - unknown error
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    2.2 修改 site.py 文件中的目录地址

    找到文件中的 USER_SITE 和 USER_BASE

    # Prefixes for site-packages; add additional prefixes like /usr/local here
    PREFIXES = [sys.prefix, sys.exec_prefix]
    # Enable per user site-packages directory
    # set it to False to disable the feature or True to force the feature
    ENABLE_USER_SITE = None
    
    # for distutils.commands.install
    # These values are initialized by the getuserbase() and getusersitepackages()
    # functions, through the main() function when Python starts.
    USER_SITE = None
    USER_BASE = None
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    我们复制原来的变量在下面修改,把原来的变量注释。

    # Prefixes for site-packages; add additional prefixes like /usr/local here
    PREFIXES = [sys.prefix, sys.exec_prefix]
    # Enable per user site-packages directory
    # set it to False to disable the feature or True to force the feature
    ENABLE_USER_SITE = None
    
    # for distutils.commands.install
    # These values are initialized by the getuserbase() and getusersitepackages()
    # functions, through the main() function when Python starts.
    # USER_SITE = None
    # USER_BASE = None
    USER_SITE = '/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages'
    USER_BASE = '/Library/Frameworks/Python.framework/Versions/3.10'
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    2.3 查看是否修改成功

    执行以下命令

    python3 -m site 
    
    • 1

    返回信息:

    sys.path = [
        '/Users/mac/Library/Python',
        '/Library/Frameworks/Python.framework/Versions/3.10/lib/python310.zip',
        '/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10',
        '/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/lib-dynload',
        '/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages',
    ]
    USER_BASE: '/Library/Frameworks/Python.framework/Versions/3.10' (exists)
    USER_SITE: '/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages' (exists)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    再次使用 pip3 install xxxx
    正确安装到上面设置的USER_SITE目录中。

  • 相关阅读:
    ROS2自定义接口Python实现机器人移动
    vr编辑器可以解决教育教学中的哪些问题
    【PTQ】Cross-Layer Equalization跨层均衡-证明和实践详细解读
    java NIO
    java计算机毕业设计学生选拔系统源码+mysql数据库+lw文档+系统+调试部署
    [开源福利] FreeRedis 历时两年正式发布 v1.0 [C#.NET Redis Client]
    Java版工程行业管理系统源码-专业的工程管理软件- 工程项目各模块及其功能点清单
    C语言编程实现只有一个未知数的两个多项式合并的程序
    支付宝支付接入流程
    隐藏video的css方法
  • 原文地址:https://blog.csdn.net/q664243624/article/details/134554155