python 标准库大全
Python 标准库
目录
简述
Python 语言参考 描述了 Python 语言的具体语法和语义,这份库参考则介绍了与 Python 一同发行的标准库。
它还描述了通常包含在 Python 发行版中的一些可选组件。
Python 标准库非常庞大,所提供的组件涉及范围十分广泛,正如以下内容目录所显示的。这个库包含了多个内置模块
(以 C 编写),Python 程序员必须依靠它们来实现系统级功能,例如文件 I/O,此外还有大量以 Python 编写的模块,
提供了日常编程中许多问题的标准解决方案。其中有些模块经过专门设计,通过将特定平台功能抽象化为平台中立的 API
来鼓励和加强 Python 程序的可移植性。
Windows 版本的 Python 安装程序通常包含整个标准库,往往还包含许多额外组件。对于类 Unix 操作系统,Python
通常会分成一系列的软件包,因此可能需要使用操作系统所提供的包管理工具来获取部分或全部可选组件。
在这个标准库以外还存在成千上万并且不断增加的其他组件 (从单独的程序、模块、软件包直到完整的应用开发框架),
访问 Python 包索引 即可获取这些第三方包。
可用性注释
如果出现“可用性:Unix”注释,意味着相应函数通常存在于 Unix 系统中。 但这并不保证其存在于某个特定的操作系统中。
如果没有单独说明,所有注明 “可用性:Unix” 的函数都支持基于 Unix 核心构建的 Mac OS X 系统。
内置函数
内置常量
内置类型
- 逻辑值检测
- 布尔运算 ---
and
,or
,not
- 比较
- 数字类型 ---
int
,float
,complex
- 迭代器类型
- 序列类型 ---
list
,tuple
,range
- 文本序列类型 ---
str
- 二进制序列类型 ---
bytes
,bytearray
,memoryview
- 集合类型 ---
set
,frozenset
- 映射类型 ---
dict
- 上下文管理器类型
- 其他内置类型
- 特殊属性
内置异常
文本处理服务
string
--- 常见的字符串操作re
--- 正则表达式操作difflib
--- 计算差异的辅助工具textwrap
--- 文本自动换行与填充unicodedata
--- Unicode 数据库stringprep
--- 因特网字符串预备readline
--- GNU readline 接口rlcompleter
--- GNU readline 的补全函数
二进制数据服务
数据类型
datetime
--- 基本的日期和时间类型calendar
--- 日历相关函数collections
--- 容器数据类型collections.abc
--- 容器的抽象基类heapq
--- 堆队列算法bisect
--- 数组二分查找算法array
--- 高效的数值数组weakref
--- 弱引用types
--- 动态类型创建和内置类型名称copy
--- 浅层 (shallow) 和深层 (deep) 复制操作pprint
--- 数据美化输出reprlib
--- 另一种repr()
实现enum
--- 对枚举的支持
数字和数学模块
numbers
--- 数字的抽象基类math
--- 数学函数cmath
--- 关于复数的数学函数decimal
--- 十进制定点和浮点运算fractions
--- 分数random
--- 生成伪随机数statistics
--- 数学统计函数
函数式编程模块
文件和目录访问
pathlib
--- 面向对象的文件系统路径os.path
--- 常用路径操作fileinput
--- 迭代来自多个输入流的行stat
--- 解析stat()
结果filecmp
--- 文件及目录的比较tempfile
--- 生成临时文件和目录glob
--- Unix 风格路径名模式扩展fnmatch
--- Unix 文件名模式匹配linecache
--- 随机读写文本行shutil
--- 高阶文件操作
数据持久化
pickle
--- Python 对象序列化copyreg
--- 注册配合pickle
模块使用的函数shelve
--- Python 对象持久化marshal
--- 内部 Python 对象序列化dbm
--- Unix "数据库" 接口sqlite3
--- SQLite 数据库 DB-API 2.0 接口模块
数据压缩和存档
zlib
--- 与 gzip 兼容的压缩gzip
--- 对 gzip 格式的支持bz2
--- 对 bzip2 压缩算法的支持lzma
--- 用 LZMA 算法压缩zipfile
--- 使用ZIP存档tarfile
--- 读写tar归档文件
文件格式
csv
--- CSV 文件读写configparser
--- 配置文件解析器netrc
--- netrc 文件处理xdrlib
--- 编码与解码 XDR 数据plistlib
--- 生成与解析 Mac OS X.plist
文件
加密服务
通用操作系统服务
os
--- 多种操作系统接口io
--- 处理流的核心工具time
--- 时间的访问和转换argparse
--- 命令行选项、参数和子命令解析器getopt
--- C-style parser for command line optionslogging
--- Python 的日志记录工具logging.config
--- 日志记录配置logging.handlers
--- 日志处理getpass
--- 便携式密码输入工具curses
--- 终端字符单元显示的处理curses.textpad
--- Text input widget for curses programscurses.ascii
--- Utilities for ASCII characterscurses.panel
--- A panel stack extension for cursesplatform
--- 获取底层平台的标识数据errno
--- Standard errno system symbolsctypes
--- Python 的外部函数库
并发执行
-
contextvars
--- Context Variables
网络和进程间通信
asyncio
--- 异步 I/Osocket
--- 底层网络接口ssl
--- 套接字对象的TLS/SSL封装select
--- 等待 I/O 完成selectors
--- 高级 I/O 复用库asyncore
--- 异步socket处理器asynchat
--- 异步 socket 指令/响应 处理器signal
--- 设置异步事件处理程序mmap
--- 内存映射文件支持
互联网数据处理
email
--- 电子邮件与 MIME 处理包json
--- JSON 编码和解码器mailcap
--- Mailcap 文件处理mailbox
--- Manipulate mailboxes in various formatsmimetypes
--- Map filenames to MIME typesbase64
--- Base16, Base32, Base64, Base85 数据编码binhex
--- 对binhex4文件进行编码和解码binascii
--- 二进制和 ASCII 码互转quopri
--- 编码与解码经过 MIME 转码的可打印数据uu
--- 对 uuencode 文件进行编码与解码
结构化标记处理工具
html
--- 超文本标记语言支持html.parser
--- 简单的 HTML 和 XHTML 解析器html.entities
--- HTML 一般实体的定义- XML处理模块
xml.etree.ElementTree
--- ElementTree XML APIxml.dom
--- The Document Object Model APIxml.dom.minidom
--- Minimal DOM implementationxml.dom.pulldom
--- Support for building partial DOM treesxml.sax
--- Support for SAX2 parsersxml.sax.handler
--- Base classes for SAX handlersxml.sax.saxutils
--- SAX 工具集xml.sax.xmlreader
--- Interface for XML parsersxml.parsers.expat
--- Fast XML parsing using Expat
互联网协议和支持
webbrowser
--- 方便的Web浏览器控制器cgi
--- Common Gateway Interface supportcgitb
--- 用于 CGI 脚本的回溯管理器wsgiref
--- WSGI Utilities and Reference Implementationurllib
--- URL 处理模块urllib.request
--- 用于打开 URL 的可扩展库urllib.response
--- urllib 使用的 Response 类urllib.parse
--- Parse URLs into componentsurllib.error
--- urllib.request 引发的异常类urllib.robotparser
--- robots.txt 语法分析程序http
--- HTTP 模块http.client
--- HTTP 协议客户端ftplib
--- FTP 协议客户端poplib
--- POP3 protocol clientimaplib
--- IMAP4 protocol clientnntplib
--- NNTP protocol clientsmtplib
---SMTP协议客户端smtpd
--- SMTP 服务器telnetlib
--- Telnet clientuuid
--- UUID objects according to RFC 4122socketserver
--- A framework for network servershttp.server
--- HTTP 服务器http.cookies
--- HTTP状态管理http.cookiejar
—— HTTP 客户端的 Cookie 处理xmlrpc
--- XMLRPC 服务端与客户端模块xmlrpc.client
--- XML-RPC client accessxmlrpc.server
--- Basic XML-RPC serversipaddress
--- IPv4/IPv6 manipulation library
多媒体服务
audioop
--- Manipulate raw audio dataaifc
--- Read and write AIFF and AIFC filessunau
--- 读写 Sun AU 文件wave
--- 读写WAV格式文件chunk
--- 读取 IFF 分块数据colorsys
--- 颜色系统间的转换imghdr
--- 推测图像类型sndhdr
--- 推测声音文件的类型ossaudiodev
--- Access to OSS-compatible audio devices
国际化
程序框架
Tk图形用户界面(GUI)
tkinter
--- Tcl/Tk的Python接口tkinter.ttk
--- Tk主题小部件tkinter.tix
--- Extension widgets for Tktkinter.scrolledtext
--- 滚动文字控件
IDLE
其他图形用户界面(GUI)包
开发工具
typing
--- 类型标注支持pydoc
--- Documentation generator and online help systemdoctest
--- 测试交互性的Python示例unittest
--- 单元测试框架unittest.mock
--- mock对象库unittest.mock
上手指南- 2to3 - 自动将 Python 2 代码转为 Python 3 代码
test
--- Regression tests package for Pythontest.support
--- Utilities for the Python test suitetest.support.script_helper
--- Utilities for the Python execution tests
调试和分析
- 审计事件表
bdb
--- Debugger frameworkfaulthandler
--- Dump the Python tracebackpdb
--- Python的调试器- Python Profilers 分析器
timeit
--- 测量小代码片段的执行时间trace
--- Trace or track Python statement executiontracemalloc
--- 跟踪内存分配
软件打包和分发
distutils
--- 构建和安装 Python 模块ensurepip
--- Bootstrapping thepip
installervenv
--- 创建虚拟环境zipapp
--- Manage executable Python zip archives
Python运行时服务
sys
--- 系统相关的参数和函数sysconfig
--- Provide access to Python's configuration informationbuiltins
--- 内建对象__main__
--- 顶层脚本环境warnings
--- Warning controldataclasses
--- 数据类contextlib
--- Utilities forwith
-statement contextsabc
--- 抽象基类atexit
--- 退出处理器traceback
--- 打印或检索堆栈回溯__future__
--- Future 语句定义gc
--- 垃圾回收器接口inspect
--- 检查对象site
—— 指定域的配置钩子
自定义 Python 解释器
导入模块
zipimport
--- 从 Zip 存档中导入模块pkgutil
--- 包扩展工具modulefinder
--- 查找脚本使用的模块runpy
--- Locating and executing Python modulesimportlib
---import
的实现- Using importlib.metadata
Python 语言服务
parser
--- Access Python parse treesast
--- 抽象语法树symtable
--- Access to the compiler's symbol tablessymbol
--- 与 Python 解析树一起使用的常量token
--- 与Python解析树一起使用的常量keyword
--- 检验Python关键字tokenize
--- 对 Python 代码使用的标记解析器tabnanny
--- 模糊缩进检测pyclbr
--- Python module browser supportpy_compile
--- Compile Python source filescompileall
--- Byte-compile Python librariesdis
--- Python 字节码反汇编器pickletools
--- pickle 开发者工具集
杂项服务
Windows系统相关模块
msilib
--- Read and write Microsoft Installer filesmsvcrt
--- Useful routines from the MS VC++ runtimewinreg
--- Windows 注册表访问winsound
--- Sound-playing interface for Windows
Unix 专有服务
posix
--- 最常见的 POSIX 系统调用pwd
--- 用户密码数据库spwd
--- The shadow password databasegrp
--- The group databasecrypt
--- Function to check Unix passwordstermios
--- POSIX 风格的 tty 控制tty
--- 终端控制功能pty
--- 伪终端工具fcntl
--- Thefcntl
andioctl
system callspipes
--- Interface to shell pipelinesresource
--- Resource usage informationnis
--- Sun 的 NIS (黄页) 接口- Unix syslog 库例程