全面解析 python 包管理工具 pip

一、什么是 pypi

The Python Package Index 是 python 软件包的存储库。在这里可以找到社区中你需要的 python 软件包。

pipy 中有 50+ 多万个项目,500+ 万加的释放,以及 76+ 万的用户。python 生态庞大,值得拥抱。

二、什么是 pip

The Python Package Installer python 的包管理工具

三、资源

四、自带 pip 的 python

🚨🚨🚨注意:Python 2.7.9 + 或 Python 3.4+ 以上版本都自带 pip 工具。

五、安装 pip

如果你还没有 pip 可以安装,带有 pip 的 python 版本。

  • py -m ensurepip --upgrade ensurepip 确认模块
  • 使用 get-pip 引导安装

六、pip 命令详解

pip --help 获取所有 pip 命令提示

  • 升级pip: pip install -U pip
  • 安装
sh 复制代码
pip install pkg              # 最新版本
pip install pkg==1.0.4       # 指定版本
pip install 'pkg>=1.0.4'     # 最小版本

pip install tmuxp # 安装 tmuxp 示例
  • 升级包:pip install --upgrade pkg
  • 搜索包: pip search pkg
  • 显示包信息:pip show/pip show -f pkg
  • 显示所有已经安装的包:pip list(pip list -o 可升级)

七、pip 镜像站

八、requirements.txt 记录python包管理工具

8.1)什么是 requirements.txt

requirements.txt 是 python 在不同的环境中对依赖包的一种约定,用于列出 Python 项目中所有的依赖包以及对应版本号的文本文件。一般在项目的在工程目录下。

8.2)requirements.txt 格式

sh 复制代码
pkg==version 等于版本
pkg>version 大于版本
pkg<version 小于版本
pkg>=version 大于等于版本
pkg<=version 小于等于版本
pkg~=version 大于版本
pkg >= 1.0, <=2.0 容版本,使用任何大于或等于指定版本,但不大于当前发行系列的版本,

8.3)一个简单的示例

txt 复制代码
touch requirements.txt

# 输入
requests==2.26.0
numpy>=1.21.4
pandas<=1.3.5

8.4)pip 安装 requirements.txt 中的包

sh 复制代码
pip install -r requirements.txt

8.5)更新 requirements.txt 中的包

sh 复制代码
pip freeze > requirements.txt

九、python 中常用包推荐

领域 库名称 描述
数据处理与科学计算 NumPy 用于数值计算,提供高效的多维数组对象和操作。
Pandas 用于数据处理和分析,提供了数据结构和工具。
SciPy 提供了许多科学计算的工具包,包括数值积分、优化、信号处理等。
matplotlib 用于绘制图表和数据可视化。
机器学习与人工智能 Scikit-learn 提供了各种机器学习算法和工具。
TensorFlow 或 PyTorch 用于深度学习和神经网络。
Keras 用于构建和训练神经网络的高级 API。
Web 开发 Flask 或 Django Web 应用程序框架,用于构建 Web 应用。
requests 用于 HTTP 请求和访问 Web 数据。
自然语言处理 NLTK 用于自然语言处理的库,包含了丰富的语料库和算法。
spaCy 提供了高效的自然语言处理工具。
测试 unittest Python 内置的单元测试框架。
pytest 简化测试的库,支持更多的测试特性。
图像处理 Pillow 用于图像处理的库,支持图像格式的处理和基本图像操作。
数据库 SQLAlchemy 用于数据库操作的库,提供了高层的 SQL 工具。
pymongo 用于 MongoDB 数据库的 Python 客户端库。
加密与安全 cryptography 提供了加密工具和算法。
请求相关 Requests 简单易用的 HTTP 请求库,用于发送各种类型的 HTTP 请求。
HTML 解析相关 Beautiful Soup 用于解析 HTML 和 XML 文档,功能强大且灵活。
游戏开发 Pygame 用于创建 2D 游戏的库,提供了图形、声音和输入的支持。
Pyglet 用于开发游戏和多媒体应用程序的库,支持 OpenGL。
Ren'Py 用于创建视觉小说和交互式故事的框架。
Arcade 适用于初学者的 2D 游戏开发库,旨在简化游戏开发过程。
PyOpenGL Python 的 OpenGL 实现,允许直接访问 OpenGL API。

十、小结

本文主要关注 pip 包管理工具以及使用方法,pip 已经在内置到了新版的 python 中,使用 pip 可方便的管理 python 的第三方依赖。同时 pip 可以通过 requirements.txt 来配置当前项目的依赖以及版本,可以很好的管理自不同环境中包的依赖问题,最后推荐了一些 python 生态中常用的包,希望能够帮助到你。

相关推荐
昨天;明天。今天。5 分钟前
案例-任务清单
前端·javascript·css
这孩子叫逆9 分钟前
Spring Boot项目的创建与使用
java·spring boot·后端
爱写代码的小朋友20 分钟前
Python的几个高级特性
python
Eric.Lee202125 分钟前
数据集-目标检测系列- 螃蟹 检测数据集 crab >> DataBall
python·深度学习·算法·目标检测·计算机视觉·数据集·螃蟹检测
一丝晨光31 分钟前
C++、Ruby和JavaScript
java·开发语言·javascript·c++·python·c·ruby
sp_wxf1 小时前
Lambda表达式
开发语言·python
蜡笔小新星1 小时前
Python Kivy库学习路线
开发语言·网络·经验分享·python·学习
zqx_71 小时前
随记 前端框架React的初步认识
前端·react.js·前端框架
coderWangbuer1 小时前
基于springboot的高校招生系统(含源码+sql+视频导入教程+文档+PPT)
spring boot·后端·sql
攸攸太上1 小时前
JMeter学习
java·后端·学习·jmeter·微服务