按用途分类,优先高频、必学模块,附带作用与典型场景,适合做知识框架、自我学习。
说明:Python 标准库 = 安装 Python 自带,无需 pip install
一、内置基础(不用 import,内置函数 / 类型)
不属于模块,但和标准库配套,是根基
二、数据结构与类型处理
模块 | 核心作用 | 常用 API |
|---|
collections
| 增强容器 | defaultdict、OrderedDict、Counter、deque、namedtuple、ChainMap
|
heapq
| 堆(优先队列) | 最小堆、heappush/heappop、topK |
bisect
| 二分查找 | 在有序列表二分插入、查找位置 |
array
| 紧凑数值数组 | 同类型基础数值,比 list 省内存 |
struct
| 二进制打包解包 | 字节流和 C 结构体互转,网络协议、二进制文件 |
enum
| 枚举 | Enum、IntEnum,固定常量
|
dataclasses
| 数据类(3.7+) | @dataclass,快速写数据载体,替代 namedtuple
|
weakref
| 弱引用 | 不增加引用计数,缓存、防内存泄漏 |
三、文本、字符串、编码
模块 | 核心作用 |
|---|
re
| 正则表达式,文本匹配、提取、替换 |
string
| 预定义字符集:大小写字母、数字、标点、空白符 |
textwrap
| 文本自动换行、缩进格式化 |
unicodedata
| Unicode 字符属性判断(是否汉字、分类) |
codecs
| 编解码底层,自定义编码、错误处理策略 |
四、日期时间
模块 | 说明 |
|---|
datetime
| ✅最常用:date /time/datetime /timedelta/timezone,时区、加减、格式化 |
time
| 底层时间:时间戳、sleep、本地时间,和 C 时间 API 对齐 |
calendar
| 日历、星期判断、闰年、月份矩阵 |
zoneinfo
| 时区数据库(3.9+,替代第三方 pytz) |
五、文件、路径、IO
模块 | 核心作用 |
|---|
pathlib
| ✅推荐(3.4+)面向对象路径:Path(),替代 os.path |
os
| 操作系统接口:环境变量、目录创建、fork、chmod |
os.path
| 传统路径处理(老代码大量使用) |
io
| IO 抽象层:StringIO(内存字符串)、BytesIO(内存字节) |
tempfile
| 临时文件 / 临时目录,自动清理 |
glob
| 文件通配符匹配 *.txt |
shutil
| 高层文件操作:复制、移动、打包、递归删除目录 |
mmap
| 内存映射大文件,超大文件高效读写 |
六、进程、线程、并发同步
模块 | 作用 |
|---|
threading
| 线程、锁 Lock/RLock、Semaphore、Event、Condition |
multiprocessing
| 多进程(绕 GIL),进程池、Pipe、Queue |
concurrent.futures
| ✅高层并发接口:ThreadPoolExecutor / ProcessPoolExecutor |
queue
| 线程安全队列 Queue / LifoQueue / PriorityQueue |
subprocess
| ✅调用外部命令,替代 os.popen,获取 stdout/stderr |
signal
| 信号处理(Linux 为主),捕获 SIGINT 等 |
sched
| 简单事件调度器 |
七、网络、套接字、互联网
模块 | 作用 |
|---|
socket
| 底层 TCP/UDP 套接字 |
socketserver
| TCP/UDP 服务器基类(简单服务器) |
http.server
| 简易 HTTP 服务器(python -m http.server) |
urllib
| URL 处理、请求、解析:urllib.request / parse / error |
email
| 构造、解析邮件 |
smtplib
| SMTP 发送邮件 |
ssl
| TLS/SSL 加密套接字 |
ipaddress
| IP 地址解析、网段判断 |
⚠️ 标准库没有 requests,requests 是第三方
八、序列化、持久化
模块 | 作用 |
|---|
json
| JSON 序列化 / 反序列化 |
pickle
| Python 对象二进制序列化(⚠️不安全,不要加载不可信数据) |
csv
| 读写 csv 表格 |
sqlite3
| 内置 SQLite 数据库,轻量本地数据库 |
configparser
| 读写 ini 配置文件 |
tomllib
| TOML 解析(3.11+,只读) |
九、数学与随机
模块 | 作用 |
|---|
math
| 常规数学:sin/cos、sqrt、log、ceil/floor、常数 pi/e |
random
| 伪随机数:randint、choice、shuffle、sample |
secrets
| ✅加密安全随机数,用于密钥、验证码(替代 random 安全场景) |
statistics
| 统计:均值、中位数、方差、分位数 |
十、类型、反射、元编程
模块 | 作用 |
|---|
inspect
| 查看对象源码、签名、栈帧、类结构 |
types
| 各种内置类型构造器,动态创建类型 |
copy
| 浅拷贝 copy / 深拷贝 deepcopy |
abc
| 抽象基类 ABC,定义接口规范 |
typing
| ✅类型提示:List、Dict、Optional、Union、Protocol(3.5 + 持续增强) |
十一、命令行与脚本工具
模块 | 作用 |
|---|
argparse
| ✅解析命令行参数(推荐) |
getopt
| 老式命令行解析,少用 |
logging
| ✅标准日志库,分级日志、Handler、Formatter |
sys
| 解释器系统参数:sys.argv、sys.path、stdin/stdout/stderr、exit |
十二、其他高频实用模块
hashlib:哈希算法 md5, sha1, sha256
hmac:带密钥哈希(消息认证)
base64:base64 编解码
zlib / gzip / bz2 / lzma:压缩解压
itertools:迭代器工具 product, permutations, combinations, chain, islice
operator:运算符函数 itemgetter, attrgetter,配合 sorted 非常常用
pdb:内置调试器 import pdb; pdb.set_trace()
timeit:小段代码性能计时
doctest:文档字符串里写测试用例
unittest:单元测试框架(pytest 是第三方)
✅ 极简优先级清单(优先吃透)
高频必掌握:sys、os、pathlib、datetime、re、json、logging、subprocess、argparse
数据处理利器:collections、itertools、operator、bisect、heapq
并发 IO:threading、concurrent.futures、queue
安全、编码:hashlib、base64、secrets
进阶元编程:inspect、abc、typing、dataclasses
❗容易混淆提醒
本文原创作者:易君召,详见:https://www.yijunzhao.cn/authors/yijunzhao,转载请注明出处。
原文链接 https://www.yijunzhao.cn/archives/python-standard-library-core-modules-overview
欢迎访问 小易撩挨踢
https://www.yijunzhao.cn/