Python 标准库¶
Python 语言参考 描述了 Python 语言的具体语法和语义,这份库参考则介绍了与 Python 一同发行的标准库。它还描述了通常包含在 Python 发行版中的一些可选组件。
Python 标准库非常庞大,所提供的组件涉及范围十分广泛,正如以下内容目录所显示的。这个库包含了多个内置模块 (以 C 编写),Python 程序员必须依靠它们来实现系统级功能,例如文件 I/O,此外还有大量以 Python 编写的模块,提供了日常编程中许多问题的标准解决方案。其中有些模块经过专门设计,通过将特定平台功能抽象化为平台中立的 API 来鼓励和加强 Python 程序的可移植性。
Windows 版本的 Python 安装程序通常包含整个标准库,往往还包含许多额外组件。对于类 Unix 操作系统,Python 通常会分成一系列的软件包,因此可能能要使用操作系统所提供的包管理工具来获取部分或全部可选组件。
在这个标准库以外还存在成千上万并且不断增加的其他组件 (从单独的程序、模块、软件包直到完整的应用开发框架),访问 Python 包索引 即可获取这些第三方包。
- 1. 概述
- 2. 内置函数
- 3. Built-in Constants
- 4. Built-in Types
- 4.1. Truth Value Testing
- 4.2. Boolean Operations —
and,or,not - 4.3. Comparisons
- 4.4. Numeric Types —
int,float,complex - 4.5. Iterator Types
- 4.6. Sequence Types —
list,tuple,range - 4.7. Text Sequence Type —
str - 4.8. Binary Sequence Types —
bytes,bytearray,memoryview - 4.9. Set Types —
set,frozenset - 4.10. Mapping Types —
dict - 4.11. Context Manager Types
- 4.12. Other Built-in Types
- 4.13. Special Attributes
- 5. Built-in Exceptions
- 6. Text Processing Services
- 6.1.
string— 常见的字符串操作 - 6.2.
re— Regular expression operations - 6.3.
difflib— Helpers for computing deltas - 6.4.
textwrap— Text wrapping and filling - 6.5.
unicodedata— Unicode Database - 6.6.
stringprep— Internet String Preparation - 6.7.
readline— GNU readline interface - 6.8.
rlcompleter— Completion function for GNU readline
- 6.1.
- 7. Binary Data Services
- 8. Data Types
- 8.1.
datetime— Basic date and time types - 8.2.
calendar— General calendar-related functions - 8.3.
collections— Container datatypes - 8.4.
collections.abc— Abstract Base Classes for Containers - 8.5.
heapq— Heap queue algorithm - 8.6.
bisect— Array bisection algorithm - 8.7.
array— Efficient arrays of numeric values - 8.8.
weakref— 弱引用 - 8.9.
types— Dynamic type creation and names for built-in types - 8.10.
copy— Shallow and deep copy operations - 8.11.
pprint— Data pretty printer - 8.12.
reprlib— Alternaterepr()implementation - 8.13.
enum— Support for enumerations
- 8.1.
- 9. Numeric and Mathematical Modules
- 9.1.
numbers— Numeric abstract base classes - 9.2.
math— Mathematical functions - 9.3.
cmath— Mathematical functions for complex numbers - 9.4.
decimal— Decimal fixed point and floating point arithmetic - 9.5.
fractions— Rational numbers - 9.6.
random— Generate pseudo-random numbers - 9.7.
statistics— Mathematical statistics functions
- 9.1.
- 10. 函数式编程模块
- 11. File and Directory Access
- 11.1.
pathlib— Object-oriented filesystem paths - 11.2.
os.path— Common pathname manipulations - 11.3.
fileinput— Iterate over lines from multiple input streams - 11.4.
stat— Interpretingstat()results - 11.5.
filecmp— File and Directory Comparisons - 11.6.
tempfile— Generate temporary files and directories - 11.7.
glob— Unix style pathname pattern expansion - 11.8.
fnmatch— Unix filename pattern matching - 11.9.
linecache— Random access to text lines - 11.10.
shutil— High-level file operations - 11.11.
macpath— Mac OS 9 path manipulation functions
- 11.1.
- 12. Data Persistence
- 13. 数据压缩和存档
- 14. File Formats
- 15. Cryptographic Services
- 16. 通用操作系统服务
- 16.1.
os— 操作系统接口模块 - 16.2.
io— Core tools for working with streams - 16.3.
time— 时间的访问和转换 - 16.4.
argparse— 命令行选项、参数和子命令解析器 - 16.5.
getopt— C-style parser for command line options - 16.6.
logging— Logging facility for Python - 16.7.
logging.config— Logging configuration - 16.8.
logging.handlers— Logging handlers - 16.9.
getpass— Portable password input - 16.10.
curses— Terminal handling for character-cell displays - 16.11.
curses.textpad— Text input widget for curses programs - 16.12.
curses.ascii— Utilities for ASCII characters - 16.13.
curses.panel— A panel stack extension for curses - 16.14.
platform— Access to underlying platform’s identifying data - 16.15.
errno— Standard errno system symbols - 16.16. :模块:`ctypes` — 调用外部函数的Python库
- 16.1.
- 17. Concurrent Execution
- 17.1.
threading— Thread-based parallelism - 17.2.
multiprocessing— Process-based parallelism - 17.3. The
concurrentpackage - 17.4.
concurrent.futures— Launching parallel tasks - 17.5.
subprocess— Subprocess management - 17.6.
sched— Event scheduler - 17.7.
queue— A synchronized queue class - 17.8.
dummy_threading— Drop-in replacement for thethreadingmodule - 17.9.
_thread—— 底层多线程 API - 17.10.
_dummy_thread——_thread的替代模块
- 17.1.
- 18. Interprocess Communication and Networking
- 18.1.
socket— Low-level networking interface - 18.2.
ssl— TLS/SSL wrapper for socket objects - 18.3.
select— Waiting for I/O completion - 18.4.
selectors— High-level I/O multiplexing - 18.5.
asyncio— Asynchronous I/O, event loop, coroutines and tasks - 18.6.
asyncore— Asynchronous socket handler - 18.7.
asynchat— Asynchronous socket command/response handler - 18.8.
signal— Set handlers for asynchronous events - 18.9.
mmap— Memory-mapped file support
- 18.1.
- 19. Internet Data Handling
- 19.1.
email— An email and MIME handling package - 19.2.
json— JSON encoder and decoder - 19.3.
mailcap— Mailcap file handling - 19.4.
mailbox— Manipulate mailboxes in various formats - 19.5.
mimetypes— Map filenames to MIME types - 19.6.
base64— Base16, Base32, Base64, Base85 Data Encodings - 19.7.
binhex— Encode and decode binhex4 files - 19.8.
binascii— Convert between binary and ASCII - 19.9.
quopri— Encode and decode MIME quoted-printable data - 19.10.
uu— Encode and decode uuencode files
- 19.1.
- 20. Structured Markup Processing Tools
- 20.1.
html— HyperText Markup Language support - 20.2.
html.parser— Simple HTML and XHTML parser - 20.3.
html.entities— Definitions of HTML general entities - 20.4. XML Processing Modules
- 20.5.
xml.etree.ElementTree— The ElementTree XML API - 20.6.
xml.dom— The Document Object Model API - 20.7.
xml.dom.minidom— Minimal DOM implementation - 20.8.
xml.dom.pulldom— Support for building partial DOM trees - 20.9.
xml.sax— Support for SAX2 parsers - 20.10.
xml.sax.handler— Base classes for SAX handlers - 20.11.
xml.sax.saxutils— SAX Utilities - 20.12.
xml.sax.xmlreader— Interface for XML parsers - 20.13.
xml.parsers.expat— Fast XML parsing using Expat
- 20.1.
- 21. Internet Protocols and Support
- 21.1.
webbrowser— Convenient Web-browser controller - 21.2.
cgi— Common Gateway Interface support - 21.3.
cgitb— Traceback manager for CGI scripts - 21.4.
wsgiref— WSGI Utilities and Reference Implementation - 21.5.
urllib— URL 处理模块 - 21.6.
urllib.request— Extensible library for opening URLs - 21.7.
urllib.response— Response classes used by urllib - 21.8.
urllib.parse— Parse URLs into components - 21.9.
urllib.error— Exception classes raised by urllib.request - 21.10.
urllib.robotparser— Parser for robots.txt - 21.11.
http— HTTP 模块 - 21.12.
http.client— HTTP protocol client - 21.13.
ftplib— FTP protocol client - 21.14.
poplib— POP3 protocol client - 21.15.
imaplib— IMAP4 protocol client - 21.16.
nntplib— NNTP protocol client - 21.17.
smtplib— SMTP protocol client - 21.18.
smtpd— SMTP Server - 21.19.
telnetlib— Telnet client - 21.20.
uuid— UUID objects according to RFC 4122 - 21.21.
socketserver— A framework for network servers - 21.22.
http.server— HTTP servers - 21.23.
http.cookies— HTTP state management - 21.24.
http.cookiejar— Cookie handling for HTTP clients - 21.25.
xmlrpc— XMLRPC server and client modules - 21.26.
xmlrpc.client— XML-RPC client access - 21.27.
xmlrpc.server— Basic XML-RPC servers - 21.28.
ipaddress— IPv4/IPv6 manipulation library
- 21.1.
- 22. Multimedia Services
- 22.1.
audioop— Manipulate raw audio data - 22.2.
aifc— Read and write AIFF and AIFC files - 22.3.
sunau— Read and write Sun AU files - 22.4.
wave— 读写WAV格式文件 - 22.5.
chunk— Read IFF chunked data - 22.6.
colorsys— Conversions between color systems - 22.7.
imghdr— Determine the type of an image - 22.8.
sndhdr— Determine type of sound file - 22.9.
ossaudiodev— Access to OSS-compatible audio devices
- 22.1.
- 23. Internationalization
- 24. Program Frameworks
- 25. Tk图形用户界面(GUI)
- 26. 开发工具
- 26.1.
typing— 类型标注支持 - 26.2.
pydoc— Documentation generator and online help system - 26.3.
doctest— Test interactive Python examples - 26.4.
unittest— Unit testing framework - 26.5.
unittest.mock— mock object library - 26.6.
unittest.mock— getting started - 26.7. 2to3 - 自动将 Python 2 代码转为 Python 3 代码
- 26.8.
test— Regression tests package for Python - 26.9.
test.support— Utilities for the Python test suite
- 26.1.
- 27. Debugging and Profiling
- 28. Software Packaging and Distribution
- 29. Python运行时服务
- 29.1.
sys— System-specific parameters and functions - 29.2.
sysconfig— Provide access to Python’s configuration information - 29.3.
builtins— 内建对象 - 29.4.
__main__—— 顶层脚本环境 - 29.5.
warnings— Warning control - 29.6.
contextlib— Utilities forwith-statement contexts - 29.7.
abc—— 抽象基类 - 29.8.
atexit— Exit handlers - 29.9.
traceback— Print or retrieve a stack traceback - 29.10.
__future__—— Future 语句定义 - 29.11.
gc— Garbage Collector interface - 29.12.
inspect— Inspect live objects - 29.13.
site— Site-specific configuration hook - 29.14.
fpectl— Floating point exception control
- 29.1.
- 30. Custom Python Interpreters
- 31. Importing Modules
- 32. Python Language Services
- 32.1.
parser— Access Python parse trees - 32.2.
ast— Abstract Syntax Trees - 32.3.
symtable— Access to the compiler’s symbol tables - 32.4.
symbol— Constants used with Python parse trees - 32.5.
token— Constants used with Python parse trees - 32.6.
keyword— Testing for Python keywords - 32.7.
tokenize— Tokenizer for Python source - 32.8.
tabnanny— Detection of ambiguous indentation - 32.9.
pyclbr— Python class browser support - 32.10.
py_compile— Compile Python source files - 32.11.
compileall— Byte-compile Python libraries - 32.12.
dis— Python 字节码反汇编器 - 32.13.
pickletools— Tools for pickle developers
- 32.1.
- 33. Miscellaneous Services
- 34. Windows系统相关模块
- 35. Unix Specific Services
- 35.1.
posix— The most common POSIX system calls - 35.2.
pwd— The password database - 35.3.
spwd— The shadow password database - 35.4.
grp— The group database - 35.5.
crypt— Function to check Unix passwords - 35.6.
termios— POSIX style tty control - 35.7.
tty— Terminal control functions - 35.8.
pty— Pseudo-terminal utilities - 35.9.
fcntl— Thefcntlandioctlsystem calls - 35.10.
pipes— Interface to shell pipelines - 35.11.
resource— Resource usage information - 35.12.
nis— Interface to Sun’s NIS (Yellow Pages) - 35.13.
syslog— Unix syslog library routines
- 35.1.
- 36. Superseded Modules
- 37. Undocumented Modules
