更改Python的pip install 默认安装依赖路径方法详解


Posted in Python onOctober 27, 2018

前言

声明:python版本3.6,以下讨论的Python也都是适用于3.x版本

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

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

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

pip install ****

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

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

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

总体步骤

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

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

2.键入

python -m site

得到这样的结果:

sys.path = [
 'C:\\Users\\Administrator',
 'F:\\Anaconda\\python36.zip',
 'F:\\Anaconda\\DLLs',
 'F:\\Anaconda\\lib',
 'F:\\Anaconda',
 'F:\\Anaconda\\lib\\site-packages',
 'F:\\Anaconda\\lib\\site-packages\\win32',
 'F:\\Anaconda\\lib\\site-packages\\win32\\lib',
 'F:\\Anaconda\\lib\\site-packages\\Pythonwin',
]
USER_BASE: 'C:\\Users\\Administrator\\AppData\\Roaming\\Python' (exists)
USER_SITE: 'C:\\Users\\Administrator\\AppData\\Roaming\\Python\\Python36\\site-packages' (exists)
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

而我自己也曾经试验过了,如果是权限问题拒绝安装访问的话,安装cmd命令提示框中提示的user-site使用方法,就能解决权限安装问题。

所以,user_site其实就是个人的site-packages默认安装路径了。而如果使用的是Anaconda 目录下的Scripts中的pip 安装依赖库或包等,则是安装在Anaconda路径下的site-packages中去。

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

因为出现了类似以下

sys.path = [
 'C:\\Users\\Administrator',
 'F:\\Anaconda\\python36.zip',
 'F:\\Anaconda\\DLLs',
 'F:\\Anaconda\\lib',
 'F:\\Anaconda',
 'F:\\Anaconda\\lib\\site-packages',
 'F:\\Anaconda\\lib\\site-packages\\win32',
 'F:\\Anaconda\\lib\\site-packages\\win32\\lib',
 'F:\\Anaconda\\lib\\site-packages\\Pythonwin',
]
USER_BASE: 'C:\\Users\\Administrator\\AppData\\Roaming\\Python' (exists)
USER_SITE: 'C:\\Users\\Administrator\\AppData\\Roaming\\Python\\Python36\\site-packages' (exists)
ENABLE_USER_SITE: True

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

cmd命令行窗口下键入:

python -m site -help

就会出现

C:\Users\Administrator>python -m site -help
F:\Anaconda\lib\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 - uses site directory is disabled by super user
  or for security reasons
 >2 - unknown error

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

找到

F:\Anaconda\lib\site.py

修改其中的参数

更改Python的pip install 默认安装依赖路径方法详解

实际修改这两个就好了。

注意

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

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

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

F:\Anaconda

当然这里最好写成

USER_BASE = "F:\Anaconda\Scripts"

更改Python的pip install 默认安装依赖路径方法详解

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

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

测试键入

pip install numpy

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

更改Python的pip install 默认安装依赖路径方法详解

以上这篇更改Python的pip install 默认安装依赖路径方法详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python调用机器喇叭发出蜂鸣声(Beep)的方法
Mar 23 Python
python中常用检测字符串相关函数汇总
Apr 15 Python
解决uWSGI的编码问题详解
Mar 24 Python
Python实现获取前100组勾股数的方法示例
May 04 Python
Python pymongo模块常用操作分析
Sep 01 Python
详解Python Qt的窗体开发的基本操作
Jul 14 Python
python2爬取百度贴吧指定关键字和图片代码实例
Aug 14 Python
pytorch 状态字典:state_dict使用详解
Jan 17 Python
Python3操作MongoDB增册改查等方法详解
Feb 10 Python
Python生成器传参数及返回值原理解析
Jul 22 Python
Python word文本自动化操作实现方法解析
Nov 05 Python
python 使用cycle构造无限循环迭代器
Dec 02 Python
python 制作自定义包并安装到系统目录的方法
Oct 27 #Python
对Python通过pypyodbc访问Access数据库的方法详解
Oct 27 #Python
Python/ArcPy遍历指定目录中的MDB文件方法
Oct 27 #Python
用Python实现筛选文件脚本的方法
Oct 27 #Python
基于python指定包的安装路径方法
Oct 27 #Python
Python 新建文件夹与复制文件夹内所有内容的方法
Oct 27 #Python
Python利用递归实现文件的复制方法
Oct 27 #Python
You might like
PHP获取文件后缀名的三个函数
2012/10/15 PHP
header导出Excel应用示例
2014/01/24 PHP
php的hash算法介绍
2014/02/13 PHP
SOSO地图JS画出标注和中心点以html形式运行
2013/08/09 Javascript
javascript实现微信分享
2014/12/23 Javascript
原生js和jquery实现图片轮播特效
2015/04/23 Javascript
js验证框架实现代码分享
2016/05/18 Javascript
微信小程序点击控件修改样式实例详解
2017/07/07 Javascript
深入探究angular2 UI组件之primeNG用法
2017/07/26 Javascript
JavaScript使用递归和循环实现阶乘的实例代码
2018/08/28 Javascript
JavaScript设计模式之装饰者模式实例详解
2019/01/17 Javascript
解决vue组件中click事件失效的问题
2019/11/09 Javascript
javascript实现超好看的3D烟花特效
2020/01/01 Javascript
[56:45]DOTA2上海特级锦标赛D组小组赛#1 EG VS COL第一局
2016/02/28 DOTA
qpython3 读取安卓lastpass Cookies
2016/06/19 Python
Python使用内置json模块解析json格式数据的方法
2017/07/20 Python
Python中对数组集进行按行打乱shuffle的方法
2018/11/08 Python
Python数据可视化库seaborn的使用总结
2019/01/15 Python
python爬虫 execjs安装配置及使用
2019/07/30 Python
django 实现将本地图片存入数据库,并能显示在web上的示例
2019/08/07 Python
python3光学字符识别模块tesserocr与pytesseract的使用详解
2020/02/26 Python
Python+Selenium实现自动化的环境搭建的步骤(图文)
2020/09/01 Python
css3的过滤效果简单实例
2016/08/03 HTML / CSS
explicit和implicit的含义
2012/11/15 面试题
深圳茁壮笔试题
2015/05/28 面试题
企业厂长岗位职责
2013/12/17 职场文书
大学军训感言200字
2014/02/26 职场文书
城管大队整治方案
2014/05/06 职场文书
人代会标语
2014/06/30 职场文书
党的群众路线教育实践活动对照检查材料(个人)
2014/09/24 职场文书
教师学习三严三实心得体会
2014/10/13 职场文书
护士节慰问信
2015/02/15 职场文书
民事起诉状范文
2015/05/19 职场文书
爱国电影观后感
2015/06/19 职场文书
教师理论学习心得体会
2016/01/21 职场文书
python requests模块的使用示例
2021/04/07 Python