📦 Python 内置但非常用库
以下是 Python 中 10 个“非常用”但非常实用的标准库,适合在特定场景中提高开发效率:
🧩 10 个常用但不常听的内置库
| 库名 | 英文名称 | 功 能简介 |
|---|---|---|
| 队列 | queue | 线程安全的队列,用于多线程任务通信 |
| 日程 | sched | 定时任务调度 |
| 临时文件 | tempfile | 创建临时文件和目录 |
| 枚举 | enum | 定义枚举类型 |
| 堆 | heapq | 实现最小堆结构 |
| 双端队列 | collections.deque | 高效双端队列 |
| 配置解析 | configparser | 读取 .ini 配置文件 |
| 拷贝 | copy | 支持浅拷贝和深拷贝 |
| uuid | uuid | 生成全局唯一标识符 |
| bz2 压缩 | bz2 | 支持 .bz2 格式文件压缩与解压 |
队列 (queue)
线程之间安全地传递任务。
导入 queue
任务队列 = queue.Queue()
任务队列.put("任务1")
打印(任务队列.get())
日程 (sched)
定时运行任务。
导入 sched, time
调度 = sched.scheduler(time.time, time.sleep)
定 打印任务():
打印("定时任务执行")
调度.enter(3, 1, 打印任务) # 3 秒后执行
调度.run()
临时文件 (tempfile)
安全创建临时文件或目录。
导入 tempfile
管 tempfile.NamedTemporaryFile(delete=False) 作为 文件:
文件.write(b"临时数据")
打印(文件.name)
枚举 (enum)
定义具名常量。
从 enum 导入 Enum
类 方向(Enum):
上 = 1
下 = 2
打印(方向.上, 方向.上.value)
堆 (heapq)
高效最小堆结构。
导入 heapq
列表 = [5, 2, 7]
heapq.heapify(列表)
打印(heapq.heappop(列表)) # 输出 2
双端队列 (collections.deque)
两端高效入出队。
从 collections 导入 deque
dq = deque([1,2,3])
dq.appendleft(0)
dq.append(4)
打印(dq)
配置解析 (configparser)
读取 .ini 格式配置。
导入 configparser
cp = configparser.ConfigParser()
cp.read("settings.ini", encoding="utf-8")
打印(cp["DEFAULT"]["用户名"])
拷贝 (copy)
支持深拷贝与浅拷贝。
导入 copy
原 = [1, [2,3]]
浅 = copy.copy(原)
深 = copy.deepcopy(原)
9. uuid (uuid)
生成全局唯一 ID。
导入 uuid
打印(uuid.uuid4())
压缩 (bz2)
读写 .bz2 格式文件。
导入 bz2
与 bz2.open("data.bz2", "wb") 作为 f:
f.write(b"压缩内容")