当前位置:首页>python>Python标准库速查表

Python标准库速查表

  • 2026-08-26 09:11:18
Python标准库速查表

你的贴心“Python学习搭子”整理

Hey!学Python的小伙伴,是不是经常听到“标准库”这个词,感觉它很厉害但又不知道从哪下手?别慌!作为你的Python学习搭子,我已经把最常用、最实用的标准库模块都整理好啦!

这份速查表专为初学者设计,每个模块我都用“人话”解释,配上最常用的3-5个函数示例,还有实际应用场景。记住哦,你不用一次性全部掌握,先挑几个自己项目里用得上的,慢慢积累就行啦!

📁 文件与操作系统相关

1. os 模块 - 操作系统的好帮手

一句话简介:让你在Python里也能像在终端里一样操作文件和文件夹,跨平台无压力!

常用函数/方法示例:

函数
作用
示例代码
os.getcwd()
获取当前工作目录
current_dir = os.getcwd()
os.listdir()
列出目录内容
files = os.listdir('.')
os.path.join()
安全地拼接路径
path = os.path.join('folder', 'file.txt')
os.makedirs()
创建多层目录
os.makedirs('data/images', exist_ok=True)
os.path.exists()
检查路径是否存在
if os.path.exists('config.json'):

典型应用场景:

  • • 批量重命名文件夹里的文件
  • • 自动创建项目目录结构
  • • 检查配置文件是否存在
  • • 遍历文件夹处理所有图片

学习搭子小贴士:os.path.join() 比手动拼接路径更安全,能自动处理不同操作系统的路径分隔符问题!

2. pathlib 模块 - 路径操作的现代方式

一句话简介:Python 3.4+ 推荐的面向对象路径操作库,代码更简洁、更直观!

常用函数/方法示例:

函数
作用
示例代码
Path()
创建路径对象
p = Path('data/file.txt')
.exists()
检查路径是否存在
if p.exists():
.read_text()
读取文本文件
content = p.read_text(encoding='utf-8')
.write_text()
写入文本文件
p.write_text('Hello!')
.glob()
模式匹配文件
for file in Path('.').glob('*.csv'):

典型应用场景:

  • • 读取配置文件
  • • 批量处理特定扩展名的文件
  • • 构建项目文件树
  • • 创建临时文件

学习搭子小贴士:如果你用的是 Python 3.4+,强烈推荐用 pathlib 代替 os.path,代码会更简洁易读!

📊 数据处理与编码

3. json 模块 - 和Web数据打交道必备

一句话简介:Python字典和JSON字符串之间的翻译官,Web开发、API调用离不开它!

常用函数/方法示例:

函数
作用
示例代码
json.loads()
JSON字符串转Python对象
data = json.loads('{"name": "小明"}')
json.dumps()
Python对象转JSON字符串
json_str = json.dumps({'age': 20})
json.load()
从文件读取JSON
with open('data.json') as f: data = json.load(f)
json.dump()
写入JSON到文件
with open('output.json', 'w') as f: json.dump(data, f)
indent
参数
美化输出(缩进)
json.dumps(data, indent=2)

典型应用场景:

  • • 读取配置文件(config.json)
  • • 调用API获取数据并解析
  • • 保存程序运行结果
  • • 在不同编程语言间传递数据

学习搭子小贴士:记得用 indent=2 参数让输出的JSON更易读,调试时超级方便!

4. csv 模块 - 表格数据处理专家

一句话简介:专门处理CSV格式的表格文件,和Excel数据无缝对接!

常用函数/方法示例:

函数
作用
示例代码
csv.reader()
读取CSV文件
with open('data.csv') as f: reader = csv.reader(f)
csv.writer()
写入CSV文件
writer = csv.writer(open('out.csv', 'w'))
csv.DictReader()
按字典读取
for row in csv.DictReader(f): print(row['name'])
csv.DictWriter()
按字典写入
writer = csv.DictWriter(f, fieldnames=['name', 'age'])
.writerow()
写入一行
writer.writerow(['Alice', 25])

典型应用场景:

  • • 导出数据分析结果
  • • 批量处理客户信息表格
  • • 转换不同格式的数据
  • • 生成报表

学习搭子小贴士:用 DictReader 和 DictWriter 可以通过列名访问数据,比用索引更不容易出错!

⏰ 时间与日期

5. datetime 模块 - 时间管理大师

一句话简介:处理日期、时间、时间间隔的专业工具,再也不怕时间计算了!

常用函数/方法示例:

函数
作用
示例代码
datetime.now()
当前日期时间
now = datetime.datetime.now()
date.today()
今天日期
today = datetime.date.today()
timedelta()
时间间隔
tomorrow = today + datetime.timedelta(days=1)
strftime()
格式化输出
now.strftime('%Y-%m-%d %H:%M:%S')
strptime()
字符串转时间
dt = datetime.strptime('2024-01-01', '%Y-%m-%d')

典型应用场景:

  • • 记录日志时间戳
  • • 计算任务截止日期
  • • 统计用户活跃时间段
  • • 生日提醒功能

学习搭子小贴士:记住这个格式字符串:%Y-%m-%d %H:%M:%S,能应付80%的时间格式化需求!

🔢 数学与随机

6. math 模块 - 数学计算宝库

一句话简介:内置了各种数学函数,从基础运算到高级数学一网打尽!

常用函数/方法示例:

函数
作用
示例代码
math.sqrt()
平方根
result = math.sqrt(16) # 4.0
math.pow()
幂运算
result = math.pow(2, 3) # 8.0
math.floor()
向下取整
result = math.floor(3.7) # 3
math.ceil()
向上取整
result = math.ceil(3.2) # 4
math.pi
圆周率常数
area = math.pi * radius**2

典型应用场景:

  • • 计算几何图形面积
  • • 科学计算
  • • 数据分析中的统计计算
  • • 游戏开发中的物理计算

学习搭子小贴士:Python内置的 ** 运算符也能做幂运算,但 math.pow() 在处理浮点数时更精确!

7. random 模块 - 随机数生成器

一句话简介:需要随机性的地方就找它,抽奖、洗牌、模拟都靠它!

常用函数/方法示例:

函数
作用
示例代码
random.random()
生成0-1随机小数
num = random.random()
random.randint()
生成整数范围
num = random.randint(1, 10)
random.choice()
随机选择元素
item = random.choice(['A', 'B', 'C'])
random.shuffle()
随机打乱列表
random.shuffle(my_list)
random.sample()
随机抽样
sample = random.sample(population, 3)

典型应用场景:

  • • 抽奖程序
  • • 随机密码生成
  • • 游戏中的随机事件
  • • 机器学习的数据打乱

学习搭子小贴士:记得先调用 random.seed() 设置随机种子,这样每次运行的结果可以复现,调试时超有用!

🧩 文本与模式匹配

8. re 模块 - 正则表达式神器

一句话简介:文本处理的瑞士军刀,查找、替换、验证字符串的终极工具!

常用函数/方法示例:

函数
作用
示例代码
re.search()
查找第一个匹配
match = re.search(r'\d+', 'abc123def')
re.findall()
查找所有匹配
numbers = re.findall(r'\d+', 'a1b22c333')
re.sub()
替换匹配项
result = re.sub(r'\s+', ' ', text)
re.match()
从开头匹配
if re.match(r'^https://', url):
re.compile()
预编译正则
pattern = re.compile(r'\d{3}-\d{4}')

典型应用场景:

  • • 验证邮箱、手机号格式
  • • 从网页源码提取数据
  • • 批量替换文本中的特定模式
  • • 解析日志文件

学习搭子小贴士:正则表达式虽然强大,但不要过度使用!简单的字符串操作用 str.replace()、str.split() 更简单高效!

📦 高级数据结构

9. collections 模块 - 增强版容器

一句话简介:Python内置数据结构的升级版,解决特定问题更高效!

常用函数/方法示例:

函数
作用
示例代码
Counter()
统计元素频率
counts = Counter(['a', 'b', 'a', 'c'])
defaultdict()
带默认值的字典
dd = defaultdict(list); dd['key'].append(1)
OrderedDict()
保持插入顺序的字典
od = OrderedDict(); od['a'] = 1; od['b'] = 2
namedtuple()
创建轻量级类
Point = namedtuple('Point', ['x', 'y'])
deque()
双端队列
d = deque([1, 2, 3]); d.appendleft(0)

典型应用场景:

  • • 统计单词频率(Counter)
  • • 分组数据(defaultdict)
  • • 实现LRU缓存(OrderedDict)
  • • 需要快速两端操作(deque)

学习搭子小贴士:Counter 是统计频次的超级利器,一行代码就能完成以前需要好几行循环的工作!

10. itertools 模块 - 迭代器工具箱

一句话简介:处理迭代器和循环的高级工具,让代码更简洁、性能更好!

常用函数/方法示例:

函数
作用
示例代码
itertools.chain()
连接多个迭代器
combined = chain(list1, list2, list3)
itertools.product()
笛卡尔积
for x, y in product(range(3), repeat=2):
itertools.permutations()
排列
perms = permutations('ABC', 2)
itertools.combinations()
组合
combs = combinations(range(5), 3)
itertools.groupby()
按键分组
for key, group in groupby(data, key=lambda x: x[0]):

典型应用场景:

  • • 多重嵌套循环的替代方案
  • • 组合优化问题
  • • 数据分组聚合
  • • 生成测试用例

学习搭子小贴士:itertools 的函数返回的是迭代器,不会一次性生成所有结果,对大数据集更节省内存!

🔧 系统与调试

11. sys 模块 - 系统级信息和控制

一句话简介:获取Python解释器信息、控制程序运行环境的好帮手!

常用函数/方法示例:

函数
作用
示例代码
sys.argv
命令行参数
script_name = sys.argv[0]
sys.exit()
退出程序
if error: sys.exit(1)
sys.path
Python搜索路径
sys.path.append('/my/modules')
sys.version
Python版本
print(f"Python {sys.version}")
sys.stdin/stdout
标准输入输出
data = sys.stdin.read()

典型应用场景:

  • • 命令行工具开发
  • • 动态添加模块搜索路径
  • • 程序异常退出控制
  • • 版本兼容性检查

学习搭子小贴士:sys.argv[0] 总是脚本的名称,真正的参数从 sys.argv[1] 开始哦!

12. logging 模块 - 专业的日志记录

一句话简介:比print更强大的日志系统,适合正式项目的调试和监控!

常用函数/方法示例:

函数
作用
示例代码
logging.basicConfig()
基础配置
logging.basicConfig(level=logging.INFO)
logging.getLogger()
获取记录器
logger = logging.getLogger(__name__)
.debug()/.info()
记录日志
logger.info("程序启动")
FileHandler()
文件处理器
handler = logging.FileHandler('app.log')
Formatter()
格式化日志
formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s')

典型应用场景:

  • • 生产环境错误跟踪
  • • 性能监控
  • • 用户行为分析
  • • 系统状态记录

学习搭子小贴士:用 logging 替代 print,可以通过调整日志级别轻松控制输出量,调试和部署两不误!

🎯 如何使用这份速查表

作为你的Python学习搭子,我建议你这样使用这份速查表:

  1. 1. 别急着背! 先整体浏览一遍,知道每个模块大概能做什么
  2. 2. 项目驱动学习:做实际项目时,遇到相关需求再来查
  3. 3. 动手敲代码:把示例代码都自己敲一遍,理解才会深刻
  4. 4. 组合使用:很多模块是搭配使用的,比如 os + pathlib + json

📚 进阶学习资源

想要深入了解某个模块?这些官方资源超有用:

  • • Python官方标准库文档 - https://docs.python.org/3/library/index.html - 最权威、最全面
  • • Python Module of the Week - https://pymotw.com/3/ - 每个模块的深度教程
  • • Real Python 教程 - https://realpython.com/ - 很多实用的实战案例

最后再唠叨一句:学习编程就像搭积木,标准库就是你手边的积木块。不用一次性记住所有形状,先从搭建简单的小房子开始,慢慢你就会发现自己能搭出摩天大楼啦!

加油,Python学习搭子永远陪着你! 🚀

这份速查表由你的专属“Python学习搭子”整理,我们会持续更新更多实用内容!

最新文章

随机文章