Python匯總篇,200+Python標準庫介紹(超全)
來源丨網(wǎng)絡
大家好,我是老表
今天給大家介紹一下200多個Python標準庫,讓大家對Python標準庫有一個大致的認識。
關于Python標準庫
01
眾所周知,Python是一個依賴強大的組件庫完成對應功能的語言,為了便捷實現(xiàn)各項功能,前輩大牛們打造了多種多樣的工具庫公開提供給大眾使用,而越來越多的庫已經(jīng)因為使用的廣泛和普遍及其功能的強大,已經(jīng)成為Python的標準庫。
時至今日,Python 標準庫已經(jīng)非常龐大,所提供的組件涉及范圍十分廣泛,正如本文后面的內(nèi)容中所顯示的。這個庫包含了多個內(nèi)置模塊 (以 C 編寫),Python 程序員必須依靠它們來實現(xiàn)系統(tǒng)級功能,例如文件 I/O,此外還有大量以 Python 編寫的模塊,提供了日常編程中許多問題的標準解決方案。其中有些模塊經(jīng)過專門設計,通過將特定平臺功能抽象化為平臺中立的 API 來鼓勵和加強 Python 程序的可移植性。
Windows 版本的 Python 安裝程序通常包含整個標準庫,往往還包含許多額外組件。對于類 Unix 操作系統(tǒng),Python 通常會分成一系列的軟件包,因此可能需要使用操作系統(tǒng)所提供的包管理工具來獲取部分或全部可選組件。
在這個標準庫以外還存在成千上萬并且不斷增加的其他組件 (從單獨的程序、模塊、軟件包直到完整的應用開發(fā)框架),均可以在網(wǎng)絡上搜索到并下載使用。
目錄列表
02
本文將按以下順序列舉各分類下的標準庫:
文本
二進制數(shù)據(jù)
數(shù)據(jù)類型
數(shù)學
函數(shù)式編程
文件與目錄
持久化
壓縮
文件格式化
加密
操作系統(tǒng)工具
并發(fā)
進程間通信
互聯(lián)網(wǎng)
HTML與XML
互聯(lián)網(wǎng)協(xié)議與支持
多媒體
國際化
編程框架
Tk圖形用戶接口
開發(fā)工具
調(diào)試
運行時
解釋器
導入模塊
Python語言
其它
Windows相關
Unix相關
文本
string:通用字符串操作
re:正則表達式操作
difflib:差異計算工具
textwrap:文本填充
unicodedata:Unicode字符數(shù)據(jù)庫
stringprep:互聯(lián)網(wǎng)字符串準備工具
readline:GNU按行讀取接口
rlcompleter:GNU按行讀取的實現(xiàn)函數(shù)
二進制數(shù)據(jù)
struct:將字節(jié)解析為打包的二進制數(shù)據(jù)
codecs:注冊表與基類的編解碼器
數(shù)據(jù)類型
datetime:基于日期與時間工具
calendar:通用月份函數(shù)
collections:容器數(shù)據(jù)類型
collections.abc:容器虛基類
heapq:堆隊列算法
bisect:數(shù)組二分算法
array:高效數(shù)值數(shù)組
weakref:弱引用
types:內(nèi)置類型的動態(tài)創(chuàng)建與命名
copy:淺拷貝與深拷貝
pprint:格式化輸出
reprlib:交替repr()的實現(xiàn)
數(shù)學
numbers:數(shù)值的虛基類
math:數(shù)學函數(shù)
cmath:復數(shù)的數(shù)學函數(shù)
decimal:定點數(shù)與浮點數(shù)計算
fractions:有理數(shù)
random:生成偽隨機數(shù)
函數(shù)式編程
itertools:為高效循環(huán)生成迭代器
functools:可調(diào)用對象上的高階函數(shù)與操作
operator:針對函數(shù)的標準操作
文件與目錄
os.path:通用路徑名控制
fileinput:從多輸入流中遍歷行
stat:解釋stat()的結果
filecmp:文件與目錄的比較函數(shù)
tempfile:生成臨時文件與目錄
glob:Unix風格路徑名格式的擴展
fnmatch:Unix風格路徑名格式的比對
linecache:文本行的隨機存儲
shutil:高級文件操作
macpath:MacOS 9路徑控制函數(shù)
持久化
pickle:Python對象序列化
copyreg:注冊機對pickle的支持函數(shù)
shelve:Python對象持久化
marshal:內(nèi)部Python對象序列化
dbm:Unix“數(shù)據(jù)庫”接口
sqlite3:針對SQLite數(shù)據(jù)庫的API2.0
壓縮
zlib:兼容gzip的壓縮
gzip:對gzip文件的支持
bz2:對bzip2壓縮的支持
lzma:使用LZMA算法的壓縮
zipfile:操作ZIP存檔
tarfile:讀寫tar存檔文件
文件格式化
csv:讀寫CSV文件
configparser:配置文件解析器
netrc:netrc文件處理器
xdrlib:XDR數(shù)據(jù)編碼與解碼
plistlib:生成和解析Mac OS X.plist文件
加密
hashlib:安全散列與消息摘要
hmac:針對消息認證的鍵散列
操作系統(tǒng)工具
os:多方面的操作系統(tǒng)接口
io:流核心工具
time:時間的查詢與轉(zhuǎn)化
argparser:命令行選項、參數(shù)和子命令的解析器
optparser:命令行選項解析器
getopt:C風格的命令行選項解析器
logging:Python日志工具
logging.config:日志配置
logging.handlers:日志處理器
getpass:簡易密碼輸入
curses:字符顯示的終端處理
curses.textpad:curses程序的文本輸入域
curses.ascii:ASCII字符集工具
curses.panel:curses的控件棧擴展
platform:訪問底層平臺認證數(shù)據(jù)
errno:標準錯誤記號
ctypes:Python外部函數(shù)庫
并發(fā)
threading:基于線程的并行
multiprocessing:基于進程的并行
concurrent:并發(fā)包
concurrent.futures:啟動并行任務
subprocess:子進程管理
sched:事件調(diào)度
queue:同步隊列
select:等待I / O完成
dummy_threading:threading模塊的替代(當_thread不可用時)
_thread:底層的線程API(threading基于其上)
_dummy_thread:_thread模塊的替代(當_thread不可用時)
進程間通信
socket:底層網(wǎng)絡接口
ssl:socket對象的TLS / SSL填充器
asyncore:異步套接字處理器
asynchat:異步套接字命令 / 響應處理器
signal:異步事務信號處理器
mmap:內(nèi)存映射文件支持
互聯(lián)網(wǎng)
email:郵件與MIME處理包
json:JSON編碼與解碼
mailcap:mailcap文件處理
mailbox:多種格式控制郵箱
mimetypes:文件名與MIME類型映射
base64:RFC
3548:Base16、Base32、Base64編碼
binhex:binhex4文件編碼與解碼
binascii:二進制碼與ASCII碼間的轉(zhuǎn)化
quopri:MIME
quoted - printable數(shù)據(jù)的編碼與解碼
uu:uuencode文件的編碼與解碼
HTML與XML
html:HTML支持
html.parser:簡單HTML與XHTML解析器
html.entities:HTML通用實體的定義
xml:XML處理模塊
xml.etree.ElementTree:樹形XML元素API
xml.dom:XML DOM API
xml.dom.minidom:XML DOM最小生成樹
xml.dom.pulldom:構建部分DOM樹的支持
xml.sax:SAX2解析的支持
xml.sax.handler:SAX處理器基類
xml.sax.saxutils:SAX工具
xml.sax.xmlreader:SAX解析器接口
xml.parsers.expat:運用Expat快速解析XML
互聯(lián)網(wǎng)協(xié)議與支持
webbrowser:簡易Web瀏覽器控制器
cgi:CGI支持
cgitb:CGI腳本反向追蹤管理器
wsgiref:WSGI工具與引用實現(xiàn)
urllib:URL處理模塊
urllib.request:打開URL連接的擴展庫
urllib.response:urllib模塊的響應類
urllib.parse:將URL解析成組件
urllib.error:urllib.request引發(fā)的異常類
urllib.robotparser:robots.txt的解析器
http:HTTP模塊
http.client:HTTP協(xié)議客戶端
ftplib:FTP協(xié)議客戶端
poplib:POP協(xié)議客戶端
imaplib:IMAP4協(xié)議客戶端
nntplib:NNTP協(xié)議客戶端
smtplib:SMTP協(xié)議客戶端
smtpd:SMTP服務器
telnetlib:Telnet客戶端
uuid:RFC4122的UUID對象
socketserver:網(wǎng)絡服務器框架
http.server:HTTP服務器
http.cookies:HTTPCookie狀態(tài)管理器
http.cookiejar:HTTP客戶端的Cookie處理
xmlrpc:XML - RPC服務器和客戶端模塊
xmlrpc.client:XML - RPC客戶端訪問
xmlrpc.server:XML - RPC服務器基礎
ipaddress:IPv4 / IPv6控制庫
多媒體
audioop:處理原始音頻數(shù)據(jù)
aifc:讀寫AIFF和AIFC文件
sunau:讀寫Sun AU文件
wave:讀寫WAV文件
chunk:讀取IFF大文件
colorsys:顏色系統(tǒng)間轉(zhuǎn)化
imghdr:指定圖像類型
sndhdr:指定聲音文件類型
ossaudiodev:訪問兼容OSS的音頻設備
國際化
gettext:多語言的國際化服務
locale:國際化服務
編程框架
turtle:Turtle圖形庫
cmd:基于行的命令解釋器支持
shlex:簡單詞典分析
Tk圖形用戶接口
tkinter:Tcl / Tk接口
tkinter.ttk:Tk主題控件
tkinter.tix:Tk擴展控件
tkinter.scrolledtext:滾軸文本控件
開發(fā)工具
pydoc:文檔生成器和在線幫助系統(tǒng)
doctest:交互式Python示例
unittest:單元測試框架
unittest.mock:模擬對象庫
test:Python回歸測試包
test.support:Python測試工具套件
venv:虛擬環(huán)境搭建
調(diào)試
bdb:調(diào)試框架
faulthandler:Python反向追蹤庫
pdb:Python調(diào)試器
timeit:小段代碼執(zhí)行時間測算
trace:Python執(zhí)行狀態(tài)追蹤
運行時
sys:系統(tǒng)相關的參數(shù)與函數(shù)
sysconfig:訪問Python配置信息
builtins:內(nèi)置對象
main:頂層腳本環(huán)境
warnings:警告控制
contextlib:with狀態(tài)的上下文工具
abc:虛基類
atexit:出口處理器
traceback:打印或讀取一條棧的反向追蹤
future:未來狀態(tài)定義
gc:垃圾回收接口
inspect:檢查存活的對象
site:址相關的配置鉤子(hook)
fpectl:浮點數(shù)異??刂?/p>
distutils:生成和安裝Python模塊
解釋器
code:基類解釋器
codeop:編譯Python代碼
導入模塊
imp:訪問import模塊的內(nèi)部
zipimport:從ZIP歸檔中導入模塊
pkgutil:包擴展工具
modulefinder:通過腳本查找模塊
runpy:定位并執(zhí)行Python模塊
importlib:import的一種實施
Python語言
parser:訪問Python解析樹
ast:抽象句法樹
symtable:訪問編譯器符號表
symbol:Python解析樹中的常量
token:Python解析樹中的常量
keyword:Python關鍵字測試
tokenize:Python源文件分詞
tabnany:模糊縮進檢測
pyclbr:Python類瀏覽支持
py_compile:編譯Python源文件
compileall:按字節(jié)編譯Python庫
dis:Python字節(jié)碼的反匯編器
pickletools:序列化開發(fā)工具
其他
formatter:通用格式化輸出
Windows相關
msilib:讀寫Windows的Installer文件
msvcrt:MS VC + + Runtime的有用程序
winreg:Windows注冊表訪問
winsound:Windows聲音播放接口
Unix相關
posix:最常用的POSIX調(diào)用
pwd:密碼數(shù)據(jù)庫
spwd:影子密碼數(shù)據(jù)庫
grp:組數(shù)據(jù)庫
crypt:Unix密碼驗證
termios:POSIX風格的tty控制
tty:終端控制函數(shù)
pty:偽終端工具
fcntl:系統(tǒng)調(diào)用fcntl()和ioctl()
pipes:shell管道接口
resource:資源可用信息
nis:Sun的NIS的接口
syslog:Unix 日志服務
--END--
老表福利
贈送規(guī)則:
給本文點贊,掃碼添加老表微信,憑文章點贊截圖,可以獲取抽獎二維碼,微信抽獎送出3本《Python最優(yōu)化算法實戰(zhàn)》;(中獎機率一般在30%左右);
掃碼即可加我微信
老表朋友圈經(jīng)常有贈書/紅包福利活動
學習更多: 整理了我開始分享學習筆記到現(xiàn)在超過250篇優(yōu)質(zhì)文章,涵蓋數(shù)據(jù)分析、爬蟲、機器學習等方面,別再說不知道該從哪開始,實戰(zhàn)哪里找了
“點贊”支持 
