pip的再学习
pip 主要用来管理python的第三方包,也是Python的强大之处。基本的使用就是对第三方包的管理有:安装/卸载/更新/查找,和sql语句一样增删改查为基本。
安装
基本的安装使用python的人都会,即:
pip install package
但是这种情况,有时候网络非常的慢(pip默认源在国外)安装的过程很痛苦,这个时候可以更换国内源安装来加快安装速度,使用下列命令
pip install package -i url
常用的国内源有
# 豆瓣 https://pypi.doubanio.com/simple/
# 阿里云 https://mirrors.aliyun.com/pypi/simple/
# 清华大学
https://pypi.tuna.tsinghua.edu.cn/simple/
https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple/
但是新的问题也会产生。
习惯了快速的安装包,有开始烦躁每次的使用源地址,怎么一劳永逸的解决使用国内源呢?
pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/
或者
永久方法(不用每次打上URL)windows文件管理器下输入:%APPDATA%
新建pip文件夹,在pip文件夹下新建pip.ini文件
输入如下代码并保存
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple/
[install]
trusted-host=pypi.tuna.tsinghua.edu.cn
到了这里更快的安装第三方包的方法已经掌握了,那么如何安装指定版本的包呢?
命令如下
pip install SomePackage # latest version
pip install SomePackage==1.0.4 # specific version
pip install 'SomePackage>=1.0.4' # minimum version
在看github上的python项目的时候都会使用requirements.txt来记录这个项目中所有使用的第三方包,一个个的去安装就显得很笨拙。简单的安装方法是:
pip install -r requirements.txt
之后就可以运行这个项目了。
两个特殊的情况
特殊情况一:
有时候 pip install package 会安装报错 这个时候可以下载对应的wheel包来安装
pip isntall package.whl
特殊情况二:
有时候需要在离线环境去安装对应的运行包,这个时候需要先使下载对应的包或者wheel
之后再去安装。
对于wheel文件
pip install --use-wheel --no-index --find-links=path/to/my_wheels Unidecode
或者你的pip下载文件,其中文件为:/root/zc/package/
pip install --no-index --find-links=/root/zc/package/ cryptography
卸载
卸载包一般使用的命令为
pip uninstall package
更新
对于包的更新
pip install --upgrade packege
当然页可以更新到某些版本
pip install --upgrade package == 1.0.4
还有一种情况是对pip自身的更新
pip install --upgrade pip
查询
查询当前环境下已经安装了哪些包,可以使用
pip list
查询某个包是否已经安装可以使用
pip show package
如果安装了会显示下面这样的
Name: numpy
Version: 1.22.3
Summary: NumPy is the fundamental package for array computing with Python.
Home-page: https://www.numpy.org
Author: Travis E. Oliphant et al.
Author-email:
License: BSD
Location: d:\soft\python3.10.4\lib\site-packages
Requires:
Required-by: opencv-python
没有安装的话会显示下面的
WARNING: Package(s) not found: pandas
特例
1.简单的导出当前环境的所有包以及其版本信息
pip freeze requirements.txt
2.创建自己的wheel方便离线安装,其中my_wheels为目录,Unidecode为whl的文件名
pip wheel --wheel-dir=my_wheels Unidecode