Python 中有哪些常用的 API?
作者:15726608245 · 2025-04-08 · 阅读时间:6分钟
Python 常用 API 包括用于 Web 开发的 Flask、Django 和 FastAPI,网络请求的 Requests 和 HTTPX,数据库交互的 SQLAlchemy 和 Peewee,数据处理的 Pandas 和 NumPy,机器学习的 Scikit-learn 和 TensorFlow,图像处理的 Pillow 和 OpenCV,自然语言处理的 NLTK 和 spaCy,命令行接口的 Click 和 Argparse,并发的 Threading 和 Asyncio,以及测试的 unittest 和 pytest。这些工具帮助开发者高效构建多种应用程序。
文章目录
1. Web 开发
- Flask:轻量级 Web 框架,易于上手,适合构建小型到中型的应用程序。
- Django:功能齐全的全栈 Web 框架,内置 ORM、认证系统等,适用于快速开发复杂网站。
- FastAPI:现代、快速(高性能)的 Web 框架,基于 Python 类型提示,支持异步编程。
示例(Flask):
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello, World!'
if __name__ == '__main__':
app.run()

2. 网络请求与 HTTP 客户端
- Requests:人类友好的 HTTP 库,简化了发送 HTTP 请求的过程。
- HTTPX:一个基于 async/await 的 HTTP 客户端,兼容 Requests 接口,支持同步和异步操作。
示例(Requests):
import requests
response = requests.get('https://api.github.com')
print(response.status_code)
print(response.json())

3. 数据库交互
- SQLAlchemy:强大的 SQL 工具包和对象关系映射器(ORM),支持多种数据库后端。
- Peewee:轻量级 ORM,简单易用,适合小型项目。
- Django ORM:如果使用 Django 框架,其内置的 ORM 提供了非常方便的数据库访问方式。
示例(SQLAlchemy):
from sqlalchemy import create_engine, Column, Integer, String
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import sessionmaker
Base = declarative_base()
class User(Base):
__tablename__ = 'users'
id = Column(Integer, primary_key=True)
name = Column(String)
engine = create_engine('sqlite:///:memory:')
Base.metadata.create_all(engine)
Session = sessionmaker(bind=engine)
session = Session()
new_user = User(name='Alice')
session.add(new_user)
session.commit()
users = session.query(User).all()
for user in users:
print(user.name)

4. 数据处理与分析
- Pandas:提供高性能的数据结构和数据分析工具,广泛应用于金融、统计等领域。
- NumPy:用于科学计算的基础库,特别擅长处理大型多维数组和矩阵运算。
- SciPy:基于 NumPy 构建,提供了更多的数学函数和算法。
示例(Pandas):
import pandas as pd
df = pd.DataFrame({
'A': [1, 2, 3],
'B': ['a', 'b', 'c']
})
print(df)

5. 机器学习与深度学习
- Scikit-learn:专注于传统机器学习算法的库,提供了数据预处理、模型选择等功能。
- TensorFlow 和 PyTorch:两个最流行的深度学习框架,支持 GPU 加速训练。
示例(Scikit-learn):
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier
iris = load_iris()
X_train, X_test, y_train, y_test = train_test_split(iris.data, iris.target, test_size=0.2)
clf = KNeighborsClassifier()
clf.fit(X_train, y_train)
print(clf.score(X_test, y_test))

6. 图像处理
- Pillow (PIL Fork):Python Imaging Library 的一个分支,提供了广泛的图像处理功能。
- OpenCV:开源计算机视觉库,包含了大量的图像处理和机器视觉算法。
示例(Pillow):
from PIL import Image
img = Image.open('example.jpg')
gray_img = img.convert('L') # 转换为灰度图像
gray_img.show()

7. 自然语言处理
- NLTK:经典的 NLP 库,涵盖了分词、词性标注、句法解析等多个方面。
- spaCy:更现代化的 NLP 库,注重速度和效率,特别适合生产环境中的应用。
示例(spaCy):
import spacy
nlp = spacy.load("en_core_web_sm")
doc = nlp("Apple is looking at buying U.K. startup for $1 billion")
for ent in doc.ents:
print(ent.text, ent.label_)

8. 命令行接口
- Click:用于创建漂亮且易于使用的命令行界面(CLI)的应用程序。
- Argparse:Python 标准库中的模块,用于解析命令行参数。
示例(Click):
import click
@click.command()
@click.option('--count', default=1, help='Number of greetings.')
@click.argument('name')
def hello(count, name):
for _ in range(count):
click.echo(f"Hello {name}!")
if __name__ == '__main__':
hello()

9. 并发与并行
- Threading 和 Multiprocessing:分别用于实现多线程和多进程编程。
- Asyncio:用于编写异步 I/O 程序,特别是网络服务端应用程序。
示例(Asyncio):
import asyncio
async def main():
print('Hello')
await asyncio.sleep(1)
print('World')
asyncio.run(main())

10. 测试
- unittest:Python 内置的单元测试框架。
- pytest:一个扩展性强的测试框架,简化了测试编写和执行过程。
示例(pytest):
# test_example.py
def add(a, b):
return a + b
def test_add():
assert add(1, 2) == 3

11. 日志记录
- logging:Python 内置的日志记录模块,提供了灵活的日志配置选项。
示例(logging):
import logging
logging.basicConfig(level=logging.INFO)
logger = logging.getLogger(__name__)
logger.info('This is an info message')



每一次互动,皆是鼓励, 每一份支持,共促成长。
热门推荐
一个账号试用1000+ API
助力AI无缝链接物理世界 · 无需多次注册
3000+提示词助力AI大模型
和专业工程师共享工作效率翻倍的秘密
热门API
- 1. AI文本生成
- 2. AI图片生成_文生图
- 3. AI图片生成_图生图
- 4. AI图像编辑
- 5. AI视频生成_文生视频
- 6. AI视频生成_图生视频
- 7. AI语音合成_文生语音
- 8. AI文本生成(中国)
最新文章
- SIGN×Bithumb 永续行情 API:边缘缓存 3 天优化策略
- 百度地图批量算路api服务介绍及应用场景
- Express + TypeScript + OpenFGA 权限控制实践指南
- 细粒度授权修复关键API安全风险 – Auth0
- REST API已经25岁了:它是如何形成的,将来可能会怎样?
- ZEN支付是什么?如何提高交易效率
- 标准API接口设计规范
- 音乐创作的新篇章:Flat音乐API的协同创作革命
- Python 使用 微博AI推文生成 API:自动化提升社交媒体营销效率
- 跨链桥节点混合云 API:5 天扩容方案
- 绕过API,直接部署数据库 – Fly.io
- B站微服务API管理