【win】更改 Python 的 pip install 默认安装依赖路径

本文讲述了如何将pip安装的依赖库移到Anaconda的site-packages,避免C盘占用过载,包括查找默认安装路径、修改sys.path和USER_SITE设置,以及验证修改后的效果。

在实际使用安装python的pip安装 依赖库是非常的便捷的。

而且一般大家使用的都是安装Anaconda 来学习和实践python项目。

我们通常都是直接就是使用

pip install ****

其中****代表就是安装的依赖库名或者包名。

但是简单的背后就是,我们的最重要的系统盘C盘都是逐渐满了。更关键是你满完之后还不好去删除或者将一些依赖库放在别的盘的路径下,这就是一件非常糟糕的事情了。

所以今天,为了拯救C盘强迫症的自己,我是必须要好好折腾折腾,将pip install 安装的依赖库和包名都是放在Anaconda(别的盘中)目录下的site-packages中去(全部归到这个类下)。

总体步骤

第一步:先查看自己的默认安装路径到底是在哪?列出全局的packages包的安装路径在哪?

1. 按键(win+R) ->打开cmd命令窗口。

2.键入

python -m site

得到这样的结果:

 
  1. sys.path = [

  2. 'C:\\Users\\Administrator',

  3. 'F:\\Anaconda\\python36.zip',

  4. 'F:\\Anaconda\\DLLs',

  5. 'F:\\Anaconda\\lib',

  6. 'F:\\Anaconda',

  7. 'F:\\Anaconda\\lib\\site-packages',

  8. 'F:\\Anaconda\\lib\\site-packages\\win32',

  9. 'F:\\Anaconda\\lib\\site-packages\\win32\\lib',

  10. 'F:\\Anaconda\\lib\\site-packages\\Pythonwin',

  11. ]

  12. USER_BASE: 'C:\\Users\\Administrator\\AppData\\Roaming\\Python' (exists)

  13. USER_SITE: 'C:\\Users\\Administrator\\AppData\\Roaming\\Python\\Python36\\site-packages' (exists)

  14. ENABLE_USER_SITE: True

这里有几点说明:

①我们看见这里的USER_BASE 和USER_SITE其实就是用户自定义的启用Python脚本和依赖安装包的基础路径。

②其中USER_BASE表示就是在C盘这个目录下的Python.exe启动程序路径以及pip,esay-install,markdown等脚本,(我们已经是安装好了Anaconda Python,这个C盘又是什么鬼,不想用它啊),而这个C盘的Python.exe启动程序路径其实就是我们在安装Anaconda的时候一个分身,更准确的说,其实就是简单的Python程序,并不是什么IDE这种级别的可以类似Eclipse这样去操作编译丰富的功能窗口,只是简单类似shell的一样的存在。

所以要改。

③其中的USER_SITE其实就是用户如果调用C盘路径下的python.exe中的脚本pip文件去下载,就会将site-package的默认安装到这个C盘路径下。

并且大家有时候可能在使用 pip install 命令行安装一些依赖的时候,总是会提示报错“PermissionError:[WinError 5 ] Denied Excess."C"\\......."这样的类似权限拒绝访问,并且提示你无管理员权限的话,使用pip -install ... + [user-site] 这样的字眼。”

python -m site --user-site

第二步:确认了是什么原因,那么就要去对应的配置文件改了。

因为出现了类似以下

sys.path = [

  1. 'C:\\Users\\Administrator',

  2. 'F:\\Anaconda\\python36.zip',

  3. 'F:\\Anaconda\\DLLs',

  4. 'F:\\Anaconda\\lib',

  5. 'F:\\Anaconda',

  6. 'F:\\Anaconda\\lib\\site-packages',

  7. 'F:\\Anaconda\\lib\\site-packages\\win32',

  8. 'F:\\Anaconda\\lib\\site-packages\\win32\\lib',

  9. 'F:\\Anaconda\\lib\\site-packages\\Pythonwin',

  10. ]

  11. USER_BASE: 'C:\\Users\\Administrator\\AppData\\Roaming\\Python' (exists)

  12. USER_SITE: 'C:\\Users\\Administrator\\AppData\\Roaming\\Python\\Python36\\site-packages' (exists)

  13. ENABLE_USER_SITE: True

那么肯定是有对应的配置文件去读取的,我们去寻找修改即可。

cmd命令行窗口下键入:

python -m site -help

可见,管理这个文件竟然就是安装目录下的site.py文件,之前说C盘中的Python是它的分身还真没说错了。

找到

F:\Anaconda\lib\site.py

,修改其中的参数

实际修改这两个就好了。

注意

USER_SITE = "F:\Anaconda\lib\site-packages"

这个是你要安装下载的site-packages的路径。

而执行下载的pip等脚本路径是由USER_BASE决定,并且一定一定要换到同样的有pip脚本的路径下,哪怕你路径也请写到

F:\Anaconda

当然这里最好写成

USER_BASE = "F:\Anaconda\Scripts"

可以看见Scripts就是这些执行程序和脚本位置了。

第三步:测试安装,保证你修改之后成功有效。

测试键入

pip install numpy

出现,在这个路径下其实已经拥有了满足的依赖包和库了(之前已经安装过了,今天只是将步骤总结下),所以证明是修改成功了。

以上。

### Python pip install lxml 报错失败的解决方案 当使用 `pip` 安装 `lxml` 库时遇到报错或失败的情况,通常可能是由于以下几个常见原因引起的: #### 1. **pip 版本过旧** 如果当前系统的 `pip` 已经很久未更新,则可能导致无法正常安装某些依赖项。 解决方法:升级 `pip` 到最新版本。 ```bash python -m pip install --upgrade pip ``` 这一步非常重要,因为较新的 `pip` 能够更好地处理复杂的依赖关系并支持更多平台上的二进制分发包。 --- #### 2. **缺少必要的编译工具链** `lxml` 是一个 C 扩展模块,在某些情况下需要本地编译环境才能成功构建。如果没有合适的开发工具(如 Visual Studio 的 C++ 编译器),可能会导致安装失败。 解决方法:确保已安装 Microsoft Visual C++ Build Tools 或者 Windows SDK[^2]。可以通过以下方式验证是否存在所需的编译工具: ```bash cl.exe ``` 对于大多数用户而言,推荐直接下载预编译好的 `.whl` 文件以绕过这一问题。 --- #### 3. **Python 和 lxml 版本不匹配** `lxml` 的各个版本可能仅兼容特定范围内的 Python 版本。例如,尝试在一个高版本的 Python安装低版本的 `lxml` 可能会引发冲突。因此,确认所用 Python 的具体版本号至关重要。 解决方法:前往官方镜像站点或其他可信源获取适合您操作系统的 `.whl` 文件,并手动指定其路径进行安装。例如: - 访问 [Unofficial Windows Binaries](https://www.lfd.uci.edu/~gohlke/pythonlibs/#lxml),找到对应于您的 Python 版本和架构(如 cp37 表示 Python 3.7;win_amd64 表示 64 位 Windows)的文件。 - 下载完成后,切换至该文件所在目录并通过以下命令完成安装: ```bash pip install lxml‑X.X.X‑cpXX‑cpXXm‑win_amd64.whl ``` 其中 X 替换为实际数值[^3]。 --- #### 4. **网络连接不稳定或者 PyPI 镜像不可达** 有时因网络条件限制,PyPI 中央仓库中的资源可能暂时无法访问,从而造成安装中断。 解决方法:更改默认索引地址为中国科学技术大学 (USTC) 提供的国内镜像服务之一作为替代选项: ```bash pip install lxml -i https://pypi.tuna.tsinghua.edu.cn/simple/ ``` --- #### 示例代码片段展示如何正确配置与执行以上步骤 以下是综合上述建议的一个完整流程实例: ```bash # 步骤一:先确保 pip 最新状态 python -m pip install --upgrade pip # 步骤二:可选——安装 wheel 支持自定义 whl 包导入功能 pip install wheel # 步骤三:从第三方站点选取恰当轮子文件后放置在同一工作区下再调用如下指令加载之 pip install ./downloads/lxml‑4.9.1‑cp38‑cp38‑win_amd64.whl ``` --- ### 总结 综上所述,针对 `pip install lxml` 出现错误的情形可以从四个方面入手排查并修复,即保持 `pip` 自身处于良好维护状况之下、补充缺失的基础建设组件、精确挑选相适配的目标库形式以及优化外部通信渠道质量等方面着手加以改进[^4]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值