# 1. Python包管理工具
pip 是一Python中的标准库管理器,提供了对 Python 包的查找、下载、安装、卸载的功能,它可以允许安装和管理不属于Python标准库的软件包。Python的工具和包都发布在Python 包索引(PyPI)上,通过 pip 和PyPI 调用安装。
# 2. pip包管理工具基本使用
''' cmd下查看pip版本情况 '''
pip --version # 显示 pip 的版本、安装位置及Python的版本
''' pip命令使用帮助 '''
pip help
''' pip安装/下载/卸载package_name(pkg) '''
pip install pkg # 安装包
pip download pkg # 下载包
pip uninstall pkg # 卸载包
''' pip查看包信息 '''
pip list # 显示所有安装的包
D:\Python\Lib\site-packages # 包路径
pip show pkg # 显示指定包信息
# 3. 使用pip卸载的说明
在卸载一些包时需要注意一些事项,比如在安装 request 的时会同时安装一些其他依赖包,安装越多的包,越大概率会出现多个安装包拥有共同的依赖。举例卸载包 request 时进行以下过程:
1> 查看包依赖
''' 使用show查看包依赖 '''
pip show request
Requires 和 Required-by 两个属性分别表示 request 要依赖和被依赖的包情况;request 需要依赖 get 、post、 setuptools,而 request 没有被其他包依赖,可以安全删除,最好对request 所有的依赖依次使用 pip show 运行一下查看具体依赖情况。
查看包的依赖
2> 卸载包
''' 使用uninstal命令卸载包 '''
pip uninstall request
Requires 和 Required-by
y确认卸载
# 4.freeze的使用
pip install 只会安装最新发布的软件包版本,在开发和测试或者部署安装时希望指定特定的版本,以减少意外麻烦。
1> freeze
''' 使用freeze命令格式化输出已安装的软件包 '''
pip freeze > requirements.txt
freeze 可以将所有软件包以及版本信息储存到标准输出中,一般约定输出文档的名称为 requirements.txt ,可以自行重命名。
2> 复制输出的文档到自己的系统
''' 使用pip install -r 命令复制包依赖 '''
pip install -r requirements.txt
在本机或其他系统安装时,软件包就会根据 requirements.txt 中的版本信息进行匹配,以保证配置环境与原来开发环境一致。
# 4. Python 其他包管理器
1> Conda 包含Python在内多种语言的包、依赖和环境管理器,它源于Anaconda,用于研究数据科学、机器学习等应用。
2> Pipenv 将虚拟环境和包管理合并到一个工具中,解决了手动管理包依赖关系常用到的问题(包的版本、隔离开发、生产环境依赖)