Python 標準函式庫 (Standard Library)¶
The Python Language Reference 說明 Python 這門語言確切的文法及語意,而這份函式庫參考手冊則是說明隨著 Python 一起發佈的標準函式庫,除此之外,其內容也包含一些時常出現在 Python 發佈版本中的非必要套件。
Python 的標準函式庫是非常龐大的,其提供了如下所述極多且涵蓋用途極廣的許多模組。包含一些用 C 語言撰寫,可以操作像是檔案讀寫等系統相關功能的內建模組,當然也有用 Python 撰寫,並使用標準解法解決許多常見問題的模組。其中有些模組則是特別針對 Python 的可攜性去設計的,為此特地將一些平台特殊相依性的功能抽象化成可跨平台的 API。
Python 的 Windows 安裝檔基本上包含整個標準函式庫,且通常也包含許多額外套件;而類 Unix 作業系統方面,Python 則提供一系列的套件,對於某些非必要性的套件,可能得使用該作業系統提供的套件管理工具來安裝。
In addition to the standard library, there is a growing collection of several thousand components (from individual programs and modules to packages and entire application development frameworks), available from the Python Package Index.
- 1. 簡介
- 2. 內建函式
- 3. Non-essential Built-in Functions
- 4. 內建常數
- 5. 內建型態
- 5.1. Truth Value Testing
- 5.2. Boolean Operations —
and,or,not - 5.3. Comparisons
- 5.4. Numeric Types —
int,float,long,complex - 5.5. Iterator Types
- 5.6. Sequence Types —
str,unicode,list,tuple,bytearray,buffer,xrange - 5.7. Set Types —
set,frozenset - 5.8. Mapping Types —
dict - 5.9. File Objects
- 5.10. memoryview type
- 5.11. Context Manager Types
- 5.12. Other Built-in Types
- 5.13. Special Attributes
- 6. 內建的例外
- 7. String Services
- 7.1.
string— Common string operations - 7.2.
re— Regular expression operations - 7.3.
struct— Interpret strings as packed binary data - 7.4.
difflib— Helpers for computing deltas - 7.5.
StringIO— Read and write strings as files - 7.6.
cStringIO— Faster version ofStringIO - 7.7.
textwrap— Text wrapping and filling - 7.8.
codecs— Codec registry and base classes - 7.9.
unicodedata— Unicode Database - 7.10.
stringprep— Internet String Preparation - 7.11.
fpformat— Floating point conversions
- 7.1.
- 8. Data Types
- 8.1.
datetime— Basic date and time types - 8.2.
calendar— General calendar-related functions - 8.3.
collections— High-performance container datatypes - 8.4.
heapq— 堆積佇列 (heap queue) 演算法 - 8.5.
bisect— 陣列二分演算法 (Array bisection algorithm) - 8.6.
array— 高效率的數值型態陣列 - 8.7.
sets— Unordered collections of unique elements - 8.8.
sched— Event scheduler - 8.9.
mutex— Mutual exclusion support - 8.10.
Queue— A synchronized queue class - 8.11.
weakref— Weak references - 8.12.
UserDict— Class wrapper for dictionary objects - 8.13.
UserList— Class wrapper for list objects - 8.14.
UserString— Class wrapper for string objects - 8.15.
types— Names for built-in types - 8.16.
new— Creation of runtime internal objects - 8.17.
copy— Shallow and deep copy operations - 8.18.
pprint— Data pretty printer - 8.19.
repr— Alternaterepr()implementation
- 8.1.
- 9. 數值與數學模組
- 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.
itertools— Functions creating iterators for efficient looping - 9.8.
functools— Higher-order functions and operations on callable objects - 9.9.
operator— Standard operators as functions
- 9.1.
- 10. 檔案與目錄存取
- 10.1.
os.path— Common pathname manipulations - 10.2.
fileinput— Iterate over lines from multiple input streams - 10.3.
stat— Interpretingstat()results - 10.4.
statvfs— Constants used withos.statvfs() - 10.5.
filecmp— File and Directory Comparisons - 10.6.
tempfile— Generate temporary files and directories - 10.7.
glob— Unix style pathname pattern expansion - 10.8.
fnmatch— Unix filename pattern matching - 10.9.
linecache— Random access to text lines - 10.10.
shutil— High-level file operations - 10.11.
dircache— Cached directory listings - 10.12.
macpath— Mac OS 9 path manipulation functions
- 10.1.
- 11. Data Persistence
- 11.1.
pickle— Python object serialization - 11.2.
cPickle— A fasterpickle - 11.3.
copy_reg— Registerpicklesupport functions - 11.4.
shelve— Python object persistence - 11.5.
marshal— Internal Python object serialization - 11.6.
anydbm— Generic access to DBM-style databases - 11.7.
whichdb— Guess which DBM module created a database - 11.8.
dbm— Simple 「database」 interface - 11.9.
gdbm— GNU’s reinterpretation of dbm - 11.10.
dbhash— DBM-style interface to the BSD database library - 11.11.
bsddb— Interface to Berkeley DB library - 11.12.
dumbdbm— Portable DBM implementation - 11.13.
sqlite3— DB-API 2.0 interface for SQLite databases
- 11.1.
- 12. 資料壓縮與保存
- 13. 檔案格式
- 14. Cryptographic Services
- 15. Generic Operating System Services
- 15.1.
os— Miscellaneous operating system interfaces - 15.2.
io— Core tools for working with streams - 15.3.
time— Time access and conversions - 15.4.
argparse— Parser for command-line options, arguments and sub-commands - 15.5.
optparse— Parser for command line options - 15.6.
getopt— C-style parser for command line options - 15.7.
logging— Logging facility for Python - 15.8.
logging.config— Logging configuration - 15.9.
logging.handlers— Logging handlers - 15.10.
getpass— Portable password input - 15.11.
curses— Terminal handling for character-cell displays - 15.12.
curses.textpad— Text input widget for curses programs - 15.13.
curses.ascii— Utilities for ASCII characters - 15.14.
curses.panel— A panel stack extension for curses - 15.15.
platform— Access to underlying platform’s identifying data - 15.16.
errno— Standard errno system symbols - 15.17.
ctypes— A foreign function library for Python
- 15.1.
- 16. Optional Operating System Services
- 16.1.
select— Waiting for I/O completion - 16.2.
threading— Higher-level threading interface - 16.3.
thread— Multiple threads of control - 16.4.
dummy_threading— Drop-in replacement for thethreadingmodule - 16.5.
dummy_thread— Drop-in replacement for thethreadmodule - 16.6.
multiprocessing— Process-based 「threading」 interface - 16.7.
mmap— Memory-mapped file support - 16.8.
readline— GNU readline interface - 16.9.
rlcompleter— Completion function for GNU readline
- 16.1.
- 17. Interprocess Communication and Networking
- 17.1.
subprocess— Subprocess management - 17.2.
socket— Low-level networking interface - 17.3.
ssl— TLS/SSL wrapper for socket objects - 17.4.
signal— Set handlers for asynchronous events - 17.5.
popen2— Subprocesses with accessible I/O streams - 17.6.
asyncore— Asynchronous socket handler - 17.7.
asynchat— Asynchronous socket command/response handler
- 17.1.
- 18. Internet Data Handling
- 18.1.
email— An email and MIME handling package - 18.2.
json— JSON encoder and decoder - 18.3.
mailcap— Mailcap file handling - 18.4.
mailbox— Manipulate mailboxes in various formats - 18.5.
mhlib— Access to MH mailboxes - 18.6.
mimetools— Tools for parsing MIME messages - 18.7.
mimetypes— Map filenames to MIME types - 18.8.
MimeWriter— Generic MIME file writer - 18.9.
mimify— MIME processing of mail messages - 18.10.
multifile— Support for files containing distinct parts - 18.11.
rfc822— Parse RFC 2822 mail headers - 18.12.
base64— RFC 3548: Base16, Base32, Base64 Data Encodings - 18.13.
binhex— Encode and decode binhex4 files - 18.14.
binascii— Convert between binary and ASCII - 18.15.
quopri— Encode and decode MIME quoted-printable data - 18.16.
uu— Encode and decode uuencode files
- 18.1.
- 19. Structured Markup Processing Tools
- 19.1.
HTMLParser— Simple HTML and XHTML parser - 19.2.
sgmllib— Simple SGML parser - 19.3.
htmllib— A parser for HTML documents - 19.4.
htmlentitydefs— Definitions of HTML general entities - 19.5. XML 處理模組
- 19.6. XML vulnerabilities
- 19.7.
xml.etree.ElementTree— The ElementTree XML API - 19.8.
xml.dom— The Document Object Model API - 19.9.
xml.dom.minidom— Minimal DOM implementation - 19.10.
xml.dom.pulldom— Support for building partial DOM trees - 19.11.
xml.sax— Support for SAX2 parsers - 19.12.
xml.sax.handler— Base classes for SAX handlers - 19.13.
xml.sax.saxutils— SAX Utilities - 19.14.
xml.sax.xmlreader— Interface for XML parsers - 19.15.
xml.parsers.expat— Fast XML parsing using Expat
- 19.1.
- 20. Internet Protocols and Support
- 20.1.
webbrowser— Convenient Web-browser controller - 20.2.
cgi— Common Gateway Interface support - 20.3.
cgitb— Traceback manager for CGI scripts - 20.4.
wsgiref— WSGI Utilities and Reference Implementation - 20.5.
urllib— Open arbitrary resources by URL - 20.6.
urllib2— extensible library for opening URLs - 20.7.
httplib— HTTP protocol client - 20.8.
ftplib— FTP protocol client - 20.9.
poplib— POP3 protocol client - 20.10.
imaplib— IMAP4 protocol client - 20.11.
nntplib— NNTP protocol client - 20.12.
smtplib— SMTP protocol client - 20.13.
smtpd— SMTP Server - 20.14.
telnetlib— Telnet client - 20.15.
uuid— UUID objects according to RFC 4122 - 20.16.
urlparse— Parse URLs into components - 20.17.
SocketServer— A framework for network servers - 20.18.
BaseHTTPServer— Basic HTTP server - 20.19.
SimpleHTTPServer— Simple HTTP request handler - 20.20.
CGIHTTPServer— CGI-capable HTTP request handler - 20.21.
cookielib— Cookie handling for HTTP clients - 20.22.
Cookie— HTTP state management - 20.23.
xmlrpclib— XML-RPC client access - 20.24.
SimpleXMLRPCServer— Basic XML-RPC server - 20.25.
DocXMLRPCServer— Self-documenting XML-RPC server
- 20.1.
- 21. Multimedia Services
- 21.1.
audioop— Manipulate raw audio data - 21.2.
imageop— Manipulate raw image data - 21.3.
aifc— Read and write AIFF and AIFC files - 21.4.
sunau— Read and write Sun AU files - 21.5.
wave— Read and write WAV files - 21.6.
chunk— Read IFF chunked data - 21.7.
colorsys— Conversions between color systems - 21.8.
imghdr— Determine the type of an image - 21.9.
sndhdr— Determine type of sound file - 21.10.
ossaudiodev— Access to OSS-compatible audio devices
- 21.1.
- 22. 國際化
- 23. 程式框架
- 24. 以 Tk 打造 GUI
- 25. 開發工具
- 26. Debugging and Profiling
- 27. 軟體封裝與發布
- 28. Python Runtime Services
- 28.1.
sys— System-specific parameters and functions - 28.2.
sysconfig— Provide access to Python’s configuration information - 28.3.
__builtin__— Built-in objects - 28.4.
future_builtins— Python 3 builtins - 28.5.
__main__— Top-level script environment - 28.6.
warnings— Warning control - 28.7.
contextlib— Utilities forwith-statement contexts - 28.8.
abc— Abstract Base Classes - 28.9.
atexit— Exit handlers - 28.10.
traceback— Print or retrieve a stack traceback - 28.11.
__future__— Future statement definitions - 28.12.
gc— Garbage Collector interface - 28.13.
inspect— Inspect live objects - 28.14.
site— Site-specific configuration hook - 28.15.
user— User-specific configuration hook - 28.16.
fpectl— Floating point exception control
- 28.1.
- 29. Custom Python Interpreters
- 30. Restricted Execution
- 31. 匯入模組
- 31.1.
imp— Access theimportinternals - 31.2.
importlib— Convenience wrappers for__import__() - 31.3.
imputil— Import utilities - 31.4.
zipimport— Import modules from Zip archives - 31.5.
pkgutil— Package extension utility - 31.6.
modulefinder— Find modules used by a script - 31.7.
runpy— Locating and executing Python modules
- 31.1.
- 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 bytecode的反組譯器 - 32.13.
pickletools— Tools for pickle developers
- 32.1.
- 33. Python compiler package
- 34. Miscellaneous Services
- 35. MS Windows Specific Services
- 36. Unix Specific Services
- 36.1.
posix— The most common POSIX system calls - 36.2.
pwd— The password database - 36.3.
spwd— The shadow password database - 36.4.
grp— The group database - 36.5.
crypt— Function to check Unix passwords - 36.6.
dl— Call C functions in shared objects - 36.7.
termios— POSIX style tty control - 36.8.
tty— Terminal control functions - 36.9.
pty— Pseudo-terminal utilities - 36.10.
fcntl— Thefcntlandioctlsystem calls - 36.11.
pipes— Interface to shell pipelines - 36.12.
posixfile— File-like objects with locking support - 36.13.
resource— Resource usage information - 36.14.
nis— Interface to Sun’s NIS (Yellow Pages) - 36.15.
syslog— Unix syslog library routines - 36.16.
commands— Utilities for running commands
- 36.1.
- 37. Mac OS X specific services
- 37.1.
ic— Access to the Mac OS X Internet Config - 37.2.
MacOS— Access to Mac OS interpreter features - 37.3.
macostools— Convenience routines for file manipulation - 37.4.
findertools— The finder’s Apple Events interface - 37.5.
EasyDialogs— Basic Macintosh dialogs - 37.6.
FrameWork— Interactive application framework - 37.7.
autoGIL— Global Interpreter Lock handling in event loops - 37.8. Mac OS Toolbox Modules
- 37.9.
ColorPicker— Color selection dialog
- 37.1.
- 38. MacPython OSA Modules
- 39. SGI IRIX Specific Services
- 39.1.
al— Audio functions on the SGI - 39.2.
AL— Constants used with thealmodule - 39.3.
cd— CD-ROM access on SGI systems - 39.4.
fl— FORMS library for graphical user interfaces - 39.5.
FL— Constants used with theflmodule - 39.6.
flp— Functions for loading stored FORMS designs - 39.7.
fm— Font Manager interface - 39.8.
gl— Graphics Library interface - 39.9.
DEVICE— Constants used with theglmodule - 39.10.
GL— Constants used with theglmodule - 39.11.
imgfile— Support for SGI imglib files - 39.12.
jpeg— Read and write JPEG files
- 39.1.
- 40. SunOS Specific Services
- 41. Undocumented Modules
