问题

Python 常用的标准库以及第三方库有哪些?

回答


Python 的标准库和第三方库非常丰富,覆盖了从基础操作到复杂应用的各个领域。以下是对这些库的详细分类和介绍,帮助你了解它们的用途和使用场景:



一、Python 标准库(内置模块)
Python 的标准库是随 Python 解释器一同安装的,无需额外安装即可使用。以下是常见的分类和示例:

1. 基础操作
`os`:与操作系统交互,如文件路径操作、系统命令执行。
```python
import os
os.path.join("dir1", "file.txt") "dir1/file.txt"
```
`sys`:访问系统相关参数和函数,如退出程序、获取命令行参数。
```python
import sys
sys.exit() 退出当前程序
```
`math`:数学运算,如三角函数、对数、平方根等。
```python
import math
math.sqrt(16) 4.0
```
`random`:生成随机数。
```python
import random
random.random() 0.0 ~ 1.0 之间的随机浮点数
```

2. 数据处理
`datetime`:处理日期和时间。
```python
from datetime import datetime
datetime.now() 当前时间
```
`json`:处理 JSON 数据格式。
```python
import json
json.dumps({"name": "Alice"}) 转换为 JSON 字符串
```

3. 文件和IO
`file`:读写文件。
```python
with open("file.txt", "r") as f:
content = f.read()
```
`io`:通用输入输出操作,支持多种文件格式。

4. 网络通信
`socket`:创建网络连接,实现 TCP/UDP 通信。
```python
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect(("example.com", 80))
```

5. 系统工具
`subprocess`:调用外部命令(如 shell 命令)。
```python
import subprocess
subprocess.run(["ls", "l"]) 在 Linux 下列出目录
```



二、第三方库(需通过 pip 安装)
第三方库由社区开发,功能更强大,广泛应用于不同领域。以下分类和示例:

1. Web 开发
Django:全功能 Web 框架,适合大型项目。
特点:ORM、Admin 管理界面、内置认证系统。
示例:`djangoadmin startproject myproject`
Flask:轻量级框架,适合小型应用。
特点:灵活、可扩展。
示例:`from flask import Flask; app = Flask(__name__)`
FastAPI:基于 ASGI 的现代框架,支持异步请求。
Bottle:极简框架,适合小型 API。

2. 数据处理与科学计算
Pandas:数据处理和分析,支持 DataFrame。
```python
import pandas as pd
df = pd.read_csv("data.csv")
```
NumPy:数值计算库,支持多维数组和线性代数。
```python
import numpy as np
arr = np.array([[1, 2], [3, 4]])
```
SciPy:科学计算工具,包含优化、统计、信号处理等模块。
Matplotlib:绘图库,支持静态、动态和交互式图表。
```python
import matplotlib.pyplot as plt
plt.plot([1, 2, 3], [4, 5, 1])
plt.show()
```

3. 机器学习与人工智能
Scikitlearn:机器学习库,包含分类、回归、聚类等算法。
```python
from sklearn.linear_model import LinearRegression
model = LinearRegression()
model.fit(X, y)
```
TensorFlow:深度学习框架,支持 GPU 加速。
```python
import tensorflow as tf
model = tf.keras.Sequential([...])
```
PyTorch:基于动态计算图的深度学习库,适合研究。
Keras:高级 API,简化深度学习模型构建。

4. 网络请求与 API 调用
Requests:简化 HTTP 请求。
```python
import requests
response = requests.get("https://api.example.com/data")
```
aiohttp:异步网络库,适合高并发场景。
urllib:标准库,用于构建 URL 和处理 HTTP 请求。

5. 数据库与 ORM
SQLAlchemy:ORM 工具,支持多种数据库(如 MySQL、PostgreSQL)。
```python
from sqlalchemy import create_engine
engine = create_engine("mysql+pymysql://user:pass@localhost/db")
```
PyMySQL:MySQL 客户端驱动。
SQLite3:内置数据库模块,适合小型应用。

6. 图形界面与可视化
Tkinter:Python 的标准 GUI 库。
PyQt/PySide:跨平台 GUI 框架,适合开发复杂界面。
Plotly:交互式图表库,支持 Web 集成。

7. 测试与调试
unittest:标准测试框架。
pytest:更灵活的测试工具,支持参数化和插件。
pdb:调试器,用于逐行调试代码。

8. 其他实用工具
requests:HTTP 请求库。
beautifulsoup4:解析 HTML 和 XML。
scrapy:网络爬虫框架。
docker:容器化工具,用于部署应用。
virtualenv:创建虚拟环境,隔离依赖。



三、常见库的安装与使用
安装:使用 `pip install 库名`,例如 `pip install requests`。
版本管理:推荐使用 `pipenv` 或 `conda` 管理依赖。
依赖关系:某些库需要额外安装(如 `pandas` 依赖 `numpy`)。



四、使用场景建议
Web 开发:Django(大型项目) vs Flask(小型项目)。
数据分析:Pandas + NumPy + Matplotlib。
机器学习:Scikitlearn(传统算法) vs TensorFlow/PyTorch(深度学习)。
网络爬虫:Scrapy + BeautifulSoup。
自动化:`schedule` 库实现定时任务。



五、注意事项
版本兼容性:某些库可能需要特定 Python 版本(如 Python 3.8+)。
文档查阅:官方文档(如 [Python docs](https://docs.python.org/3/))和第三方库的 [PyPI](https://pypi.org/)。
性能优化:对于大规模数据,使用 NumPy 或 Dask 等高性能库。



通过结合标准库和第三方库,Python 能够灵活应对从简单脚本到复杂系统开发的需求。根据具体项目需求选择合适的工具,能显著提升开发效率和代码质量。

网友意见

user avatar

只介绍我用过觉得有强烈推荐欲望的几个

=====================标准库

* docs.python.org/library

写命令行脚本必备,可惜是2.7才添加的,得看具体环境了…

* docs.python.org/library

解析HTML DOM树,偶尔搞搞命令行自动表单提交用得上。感觉不好用但是毕竟是官方库

=====================第三方库

* pypi.python.org/pypi/sh

简直是系统管理神器,谁用谁知道

* pypi.python.org/pypi/su

轻量的SOAP客户端,如果贵厂内部有用SOAP接口,那这个几乎是必须了

* pypi.python.org/pypi/re

这个HTTP lib的名字叫Python HTTP for Human。用过urllib、urllib2、httplib的人,你懂的

* pypi.python.org/pypi/pe

* pypi.python.org/pypi/Ma

前者是静态博客生成器(写markdown文本,然后自动转换成html静态文件),后者是文档生成器(以前拿这个做wiki用)

* pypi.python.org/pypi/pe

检查Python脚本是否符合PEP8的style guide

* pypi.python.org/pypi/Py

语法高亮的lib,很多ruby项目用的都是这个python lib来做语法高亮的

其他想到了再补充吧

类似的话题

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 tinynews.org All Rights Reserved. 百科问答小站 版权所有