Skip to content

collections、functools 与数据结构算法

本章基于 Python 3.11+

前置章节:02-标准库基础(math、random、datetime、json、正则等常用模块)

本章深入讲解性能优化、高级数据结构、函数式编程工具等进阶模块,帮助你写出更高效的 Pythonic 代码。


章节导航

章节文件核心模块主题
0101-数据容器进阶.mdcollectionsCounter、defaultdict、namedtuple、deque、ChainMap
0202-迭代器与工具函数.mditertools无限迭代器、排列组合、惰性求值
0303-函数式编程工具.mdfunctoolslru_cache、partial、wraps、singledispatch
0404-数据结构与算法.mdheapq, bisect堆排序、二分查找、优先级队列
0505-weakref弱引用.mdweakref弱引用、缓存、循环引用解决

学习重点

1. 为什么学这些?

原生 Python 数据结构(list, dict)虽然强大,但在特定场景下(如频繁查找、复杂计算)效率较低或代码冗长。使用标准库往往能实现 O(1) 复杂度C 语言级 的性能优化。

2. 核心原则

  • 不要重复造轮子:能用内置模块解决的,优先使用内置模块。
  • 类型安全:配合 typing 模块,标准库能提供很好的类型提示支持。
  • 性能优先itertoolscollections 底层由 C 实现,效率极高。