Skip to content

1. 标准库

1.1. 定义

Python 自带的模块集合,无需额外安装即可使用,涵盖了基础功能到高级系统接口。

1.2. 常见模块

模块名功能描述示例代码
os操作系统交互(文件、路径、进程等)os.listdir('.')
sysPython 解释器相关设置sys.version
math数学函数math.sqrt(16)
datetime日期和时间处理datetime.now()
jsonJSON 数据序列化与反序列化json.loads('{"key": "val"}')
re正则表达式re.search(r'pattern', text)
random随机数生成random.randint(1, 10)
requestsHTTP 请求(Python 3.7+ 建议使用)requests.get('https://api.com')

1.3. 特点

  • 跨平台一致性:在所有 Python 环境中均可使用。
  • 稳定性高:版本更新时兼容性强,很少被移除或大幅修改。
  • 无需安装:直接通过 import 导入。

2. 第三方库

2.1. 定义

由 Python 社区或第三方开发者创建的扩展库,需通过包管理器(如 pip)安装。

2.2. 常见库

领域代表库功能描述
Web 开发Flask、Django、FastAPI构建 Web 应用和 API
数据科学NumPy、pandas、Matplotlib数值计算、数据分析与可视化
机器学习scikit-learn、TensorFlow模型训练与预测
爬虫Requests、BeautifulSoup网络数据抓取与解析
自动化Selenium、PyAutoGUI浏览器自动化、桌面操作自动化
测试pytest、unittest单元测试与集成测试
异步编程asyncio、aiohttp高性能并发处理

2.3. 特点

  • 丰富性:覆盖几乎所有领域,解决特定场景需求。
  • 更新快:社区活跃,功能迭代频繁(需注意版本兼容性)。
  • 依赖管理:可能依赖其他库,需通过工具协调版本。

3. pip

3.1. 作用

Python 的官方包管理工具,用于安装、升级和卸载第三方库。

3.2. 核心命令

bash
# 安装库(指定版本或最新版)
pip install requests               # 安装最新版
pip install requests==2.28.1       # 安装指定版本
pip install "requests>=2.28.0"     # 安装最小版本
# 升级库
pip install --upgrade requests     # 升级到最新版
# 卸载库
pip uninstall requests
# 查看已安装库及版本
pip list
# 查看安装库信息
pip show requests
# 记录项目依赖,便于环境复制
# 导出依赖到文件
pip freeze > requirements.txt      # 生成依赖清单
# 从文件安装依赖
pip install -r requirements.txt    # 批量安装项目依赖

3.3. 虚拟环境

隔离项目依赖,避免版本冲突:

bash
# 创建虚拟环境
python -m venv myenv

# 激活虚拟环境
source myenv/bin/activate   # Linux/Mac
myenv\Scripts\activate      # Windows

# 退出虚拟环境
deactivate

四、三者关系

  1. 标准库是基础:Python 自带的“开箱即用”功能,适合实现通用需求。
  2. 第三方库是扩展:通过 pip 安装,填补标准库未覆盖的场景。
  3. pip 是桥梁:连接用户与第三方库,管理依赖关系。

五、使用建议

  1. 优先使用标准库:避免引入不必要的依赖,例如简单 HTTP 请求可先用 urllib
  2. 选择成熟的第三方库:优先使用社区活跃度高、文档完善的库(如 GitHub 星标数)。
  3. 锁定依赖版本:在 requirements.txt 中明确指定库版本,确保环境一致性。
  4. 使用虚拟环境:每个项目独立管理依赖,防止版本冲突。
  5. 更新与安全:定期使用 pip list --outdated 检查并更新库,修复安全漏洞。

六、示例:标准库 vs 第三方库

需求:发送 HTTP 请求并解析 JSON。

方案 1:使用标准库

python
from urllib.request import urlopen
import json

response = urlopen("https://api.example.com/data")
data = json.loads(response.read())
print(data)

方案 2:使用第三方库 requests

python
import requests

response = requests.get("https://api.example.com/data")
data = response.json()
print(data)

对比:标准库代码更繁琐,但无需额外安装;requests 代码更简洁,但需通过 pip install requests 安装。

总结

  • 标准库:Python 的“内置工具箱”,稳定且通用。
  • 第三方库:Python 的“生态武器库”,强大且灵活。
  • pip:Python 的“后勤保障”,确保依赖正确安装与管理。

合理搭配三者,能让 Python 开发高效且可靠。