前言
Python 语言之所以强大且流行,很大程度上归功于其丰富的标准库和庞大的第三方生态。模块(Module)是 Python 代码组织的基本单位,它将相关的功能封装在一起,便于复用和维护。理解并熟练使用各类模块,是提升开发效率的关键。
本文将对 Python 常用的内置模块和第三方模块进行系统性梳理,涵盖基础工具、数据处理、网络通信及自动化运维等场景,并提供最佳实践建议。
本文详细介绍了 Python 开发中常用的内置模块与第三方模块。内容涵盖 math、re、datetime、os、json、collections 等标准库的具体用法与代码示例,以及 pip 环境管理、虚拟环境配置方法。同时梳理了数据分析、爬虫、Web 开发、机器学习等领域的核心第三方库,并提供了导入顺序、异常处理、依赖锁定等最佳实践建议,旨在帮助开发者高效利用 Python 生态完成实际任务。

Python 语言之所以强大且流行,很大程度上归功于其丰富的标准库和庞大的第三方生态。模块(Module)是 Python 代码组织的基本单位,它将相关的功能封装在一起,便于复用和维护。理解并熟练使用各类模块,是提升开发效率的关键。
本文将对 Python 常用的内置模块和第三方模块进行系统性梳理,涵盖基础工具、数据处理、网络通信及自动化运维等场景,并提供最佳实践建议。
模块本质上是一个包含 Python 定义和语句的文件。文件名即为模块名,后缀为 .py。通过 import 语句,开发者可以调用模块中定义的函数、类或变量,而无需重复编写底层逻辑。这类似于工具箱中的专用工具,只需按需取用。
Python 内置了约 200 多个标准库模块,无需安装即可直接使用。以下是开发中最核心的一组:
1. math 模块 提供数学运算函数,适用于科学计算、算法实现等场景。
import math
# 计算平方根
sqrt_value = math.sqrt(25)
print("Square Root:", sqrt_value)
# 角度转弧度并计算正弦值
sin_value = math.sin(math.radians(30))
print("Sine Value:", sin_value)
# 向上取整
ceil_val = math.ceil(4.2)
print("Ceil:", ceil_val)
2. re 模块 正则表达式处理的核心模块,支持复杂的文本匹配、查找和替换。
import re
# 查找所有数字
pattern = r"\d+"
text = "There are 123 apples and 456 oranges."
matches = re.findall(pattern, text)
print("Matches:", matches) # ['123', '456']
# 替换文本
result = re.sub(r"\d+", "[NUM]", text)
print("Replaced:", result)
3. datetime 模块 用于日期时间的获取、格式化及计算。
import datetime
# 获取当前时间
now = datetime.datetime.now()
print("Current Time:", now)
# 格式化输出
formatted = now.strftime("%Y-%m-%d %H:%M:%S")
print("Formatted:", formatted)
# 时间差计算
delta = datetime.timedelta(days=1)
future = now + delta
print("Tomorrow:", future)
4. os 与 pathlib 模块
用于操作系统交互,文件路径操作推荐使用 pathlib(Python 3.4+),更面向对象。
import os
from pathlib import Path
# 获取当前工作目录
cwd = os.getcwd()
print("Working Dir:", cwd)
# 列出文件
files = os.listdir(cwd)
# 使用 pathlib 拼接路径
p = Path.cwd() / "data" / "file.txt"
if p.exists():
print(f"File exists at {p}")
5. json 模块 处理 JSON 数据格式,常用于 API 交互和数据持久化。
import json
data = {"name": "Alice", "age": 25}
# 字典转 JSON 字符串
json_str = json.dumps(data, ensure_ascii=False)
print("JSON String:", json_str)
# JSON 字符串转字典
parsed = json.loads(json_str)
print("Parsed Data:", parsed)
6. collections 模块
提供特殊的数据容器,如 defaultdict 和 Counter。
from collections import defaultdict, Counter
# 默认字典,避免 KeyErrors
word_counts = defaultdict(int)
words = ["apple", "banana", "apple"]
for w in words:
word_counts[w] += 1
print("Word Counts:", dict(word_counts))
# 元素计数
counts = Counter(words)
print("Counts:", counts)
7. csv 模块 专门处理逗号分隔值文件,适合报表导入导出。
import csv
# 写入 CSV
with open('data.csv', 'w', newline='', encoding='utf-8') as f:
writer = csv.writer(f)
writer.writerow(['Name', 'Age'])
writer.writerow(['Bob', 30])
# 读取 CSV
with open('data.csv', 'r', encoding='utf-8') as f:
reader = csv.reader(f)
for row in reader:
print(row)
8. sys 模块 与解释器交互,获取命令行参数、退出状态等。
import sys
# 获取命令行参数
args = sys.argv
print("Arguments:", args)
# 获取 Python 版本
version = sys.version
print("Version:", version)
9. logging 模块
替代 print 的日志记录系统,支持分级和文件输出。
import logging
logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(message)s')
logging.info("Application started")
logging.error("Something went wrong")
Python 的第三方库数量庞大,几乎覆盖所有技术领域。管理第三方依赖通常使用 pip 工具。
为避免依赖冲突,建议使用虚拟环境(venv)隔离项目依赖。
# 创建虚拟环境
python -m venv venv
# 激活环境 (Windows)
venv\Scripts\activate
# 激活环境 (Linux/Mac)
source venv/bin/activate
# 安装依赖
pip install requests pandas
# 导出依赖列表
pip freeze > requirements.txt
数据分析与科学计算:
pandas:高效的数据结构和分析工具。numpy:多维数组对象和数学函数库。matplotlib / seaborn:数据可视化绘图。网络爬虫与请求:
requests:简洁优雅的 HTTP 请求库。scrapy:强大的爬虫框架。beautifulsoup4:HTML/XML 解析。Web 开发:
flask:轻量级 Web 框架。django:全功能 Web 框架。机器学习与 AI:
scikit-learn:经典机器学习算法。tensorflow / pytorch:深度学习框架。自动化与脚本:
subprocess:执行系统命令。schedule:定时任务调度。openpyxl:Excel 文件读写。try-except 捕获潜在错误。requirements.txt),确保部署一致性。掌握 Python 模块的使用是进阶开发的基石。内置模块解决了大部分基础需求,而第三方库则扩展了语言的边界。建议在实际项目中多查阅官方文档(如 https://docs.python.org/zh-cn/3/library/index.html),根据具体场景选择合适的工具,并保持对新技术的关注。通过合理的环境管理和代码规范,可以构建出稳定、可维护的 Python 应用。

微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online
生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online
基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online
解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online