• 【解决】设置pip安装依赖包路径默认路径在conda路径下,而不是C盘路径下


    【解决】设置pip安装依赖包路径默认路径在conda路径下,而不是C盘路径下

    问题描述

    win11下安装miniconda,在conda环境里使用pip安装,依赖包总是安装到C盘路径,如

    C:\Users\Jimmy\AppData\Local\Programs\Python\Python311\Lib\site-packages

    但是通常,我们不希望安装在这个路径,因为会导致C盘空间被各种依赖包占满,我们希望将依赖包安装到miniconda的路径下。
    尝试了各种方法,均没有效果。按照网上流传最广的一种解决方法,是需要修改conda下的site.py文件里的user_siteuser_base这两个变量值为conda下的路径,按照这种方法尝试没有任何效果,即使修改了site.py文件,当在终端输入python -m site时,显示的user-siteuser-base依然是在C盘下,使用pip尝试安装依赖包,也是安装到C盘。

    正确的解决方法

    正确的解决方法是,在系统变量里,设置PYTHONUSERBASE系统变量,使其值为D:\ProgramData\miniconda3, 如下图所示:
    在这里插入图片描述
    修改完后,再运行python -m site查看user_baseuser_site,会发现都调整到conda路径下了:

    PS C:\Users\Arkee> python -m site
    sys.path = [
        'C:\\Users\\Jimmy',
        'D:\\ProgramData\\miniconda3\\python311.zip',
        'D:\\ProgramData\\miniconda3\\DLLs',
        'D:\\ProgramData\\miniconda3\\Lib',
        'D:\\ProgramData\\miniconda3',
        'D:\\ProgramData\\miniconda3\\Python311\\site-packages',
        'D:\\ProgramData\\miniconda3\\Lib\\site-packages',
    ]
    USER_BASE: 'D:\\ProgramData\\miniconda3' (exists)
    USER_SITE: 'D:\\ProgramData\\miniconda3\\Python311\\site-packages' (exists)
    ENABLE_USER_SITE: True
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    此时,再使用pip安装时,会提示对于安装路径没有读写权限,需要设置用户对路径的操作权限
    选择"D:\ProgramData\miniconda3"文件夹,右键-》属性-》安全:
    在这里插入图片描述
    将USERS的用户权限设置为“完全控制”,之后就可以正常安装啦。

    其他建议

    在安装miniconda后,最好将下面的几个路径添加到环境变量里:

    D:\ProgramData\miniconda3
    D:\ProgramData\miniconda3\Scripts
    D:\ProgramData\miniconda3\envs
    D:\ProgramData\miniconda3\Lib\site-packages
    D:\ProgramData\miniconda3\Python311\site-packages
    D:\ProgramData\miniconda3\Python311\Scripts
    D:\ProgramData\miniconda3\Tools\scripts
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    如下图所示:
    在这里插入图片描述

    这样在使用conda创建虚拟环境时,就会创建在路径’D:\ProgramData\miniconda3\envs’下

  • 相关阅读:
    开源游戏服务器框架NoahGameFrame(NF)服务器端环境搭建(二)
    英语——分享篇——每日100词——701-800
    XLA之HloModule“合并”
    深度学习 opencv python 公式识别(图像识别 机器视觉) 计算机竞赛
    uniapp 解决跨域的问题
    Vue组件间的通信方式浅析
    程序员是职业病高发群体,别天真的以为只有秃头那么简单,才不是呢。
    【开发随记】【提效】工作习惯那些事系列之四——任务管理
    网络——彻底搞懂数据时延的相关计算
    使用 Python 简单地实现一个网站视频播放地址查询工具
  • 原文地址:https://blog.csdn.net/vivisol/article/details/133990694