Python 標准庫
目錄
- Python 標准庫
- 簡述
- 可用性注釋
- 內置函數
- 內置常量
- 內置類型
- 內置異常
- 文本處理服務
- 二進制數據服務
- 數據類型
- 數字和數學模塊
- 函數式編程模塊
- 文件和目錄訪問
- 數據持久化
- 數據壓縮和存檔
- 文件格式
- 加密服務
- 通用操作系統服務
- 並發執行
- 網絡和進程間通信
- 互聯網數據處理
- 結構化標記處理工具
- 互聯網協議和支持
- 多媒體服務
- 國際化
- 程序框架
- Tk圖形用戶界面(GUI)
- IDLE
- 其他圖形用戶界面(GUI)包
- 開發工具
- 調試和分析
- 軟件打包和分發
- Python運行時服務
- 自定義 Python 解釋器
- 導入模塊
- Python 語言服務
- 雜項服務
- Windows系統相關模塊
- Unix 專有服務
- 被取代的模塊
- 未創建文檔的模塊
- 參考
簡述
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 thepipinstallervenv--- 創建虛擬環境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--- Thefcntlandioctlsystem callspipes--- Interface to shell pipelinesresource--- Resource usage informationnis--- Sun 的 NIS (黃頁) 接口- Unix syslog 庫例程
