把Python的200個標準庫分類整理了下,供參考

2021-03-02 Crossin的編程教室

大家好,歡迎來到 Crossin的編程教室!

Python有一套很有用的標準庫(standard library),會隨著Python解釋器一起安裝在你的電腦中的。它是Python的一個組成部分,不需要額外安裝即可直接調用。這些標準庫是Python為你準備好的利器,可以讓編程事半功倍。

在這裡我們將200個內置標準庫進行了分類整理,大家可以收藏起來,在開發中需要用到的時候可以方便查找。

文本

string:通用字符串操作

re:正則表達式操作

difflib:差異計算工具

textwrap:文本填充

unicodedata:Unicode字符資料庫

stringprep:網際網路字符串準備工具

readline:GNU按行讀取接口

rlcompleter:GNU按行讀取的實現函數

struct:將字節解析為打包的二進位數據

codecs:註冊表與基類的編解碼器

數據類型

datetime:基於日期與時間工具

calendar:通用月份函數

collections:容器數據類型

collections.abc:容器虛基類

heapq:堆隊列算法

bisect:數組二分算法

array:高效數值數組

weakref:弱引用

types:內置類型的動態創建與命名

copy:淺拷貝與深拷貝

reprlib:交替repr()的實現

數學

numbers:數值的虛基類

math:數學函數

cmath:複數的數學函數

decimal:定點數與浮點數計算

fractions:有理數

random:生成偽隨機數

函數式編程

itertools:為高效循環生成迭代器

functools:可調用對象上的高階函數與操作

operator:針對函數的標準操作

文件與目錄

os.path:通用路徑名控制

fileinput:從多輸入流中遍歷行

stat:解釋stat()的結果

filecmp:文件與目錄的比較函數

tempfile:生成臨時文件與目錄

glob:Unix風格路徑名格式的擴展

fnmatch:Unix風格路徑名格式的比對

linecache:文本行的隨機存儲

shutil:高級文件操作

macpath:MacOS 9路徑控制函數

持久化

pickle:Python對象序列化

copyreg:註冊機對pickle的支持函數

shelve:Python對象持久化

marshal:內部Python對象序列化

dbm:Unix「資料庫」接口

sqlite3:針對SQLite資料庫的API2.0

壓縮

zlib:兼容gzip的壓縮

gzip:對gzip文件的支持

bz2:對bzip2壓縮的支持

lzma:使用LZMA算法的壓縮

zipfile:操作ZIP存檔

tarfile:讀寫tar存檔文件

加密

hashlib:安全散列與消息摘要

hmac:針對消息認證的鍵散列

作業系統工具

os:多方面的作業系統接口

io:流核心工具

time:時間的查詢與轉化

argparser:命令行選項、參數和子命令的解析器

optparser:命令行選項解析器

getopt:C風格的命令行選項解析器

logging:Python日誌工具

logging.config:日誌配置

logging.handlers:日誌處理器

getpass:簡易密碼輸入

curses:字符顯示的終端處理

curses.textpad:curses程序的文本輸入域

curses.ascii:ASCII字符集工具

curses.panel:curses的控制項棧擴展

platform:訪問底層平臺認證數據

errno:標準錯誤記號

ctypes:Python外部函數庫

並發

threading:基於線程的並行

multiprocessing:基於進程的並行

concurrent:並發包

concurrent.futures:啟動並行任務

subprocess:子進程管理

sched:事件調度

queue:同步隊列

select:等待I / O完成

dummy_threading:threading模塊的替代(當_thread不可用時)

_thread:底層的線程API(threading基於其上)

_dummy_thread:_thread模塊的替代(當_thread不可用時)

進程間通信

socket:底層網絡接口

ssl:socket對象的TLS / SSL填充器

asyncore:異步套接字處理器

asynchat:異步套接字命令 / 響應處理器

signal:異步事務信號處理器

mmap:內存映射文件支持

網際網路

email:郵件與MIME處理包

json:JSON編碼與解碼

mailcap:mailcap文件處理

mailbox:多種格式控制郵箱

mimetypes:文件名與MIME類型映射

base64:RFC3548:Base16、Base32、Base64編碼

binhex:binhex4文件編碼與解碼

binascii:二進位碼與ASCII碼間的轉化

quopri:MIMEquoted - printable數據的編碼與解碼

uu:uuencode文件的編碼與解碼

網際網路協議與支持

webbrowser:簡易Web瀏覽器控制器

cgi:CGI支持

cgitb:CGI腳本反向追蹤管理器

wsgiref:WSGI工具與引用實現

urllib:URL處理模塊

urllib.request:打開URL連接的擴展庫

urllib.response:urllib模塊的響應類

urllib.parse:將URL解析成組件

urllib.error:urllib.request引發的異常類

urllib.robotparser:robots.txt的解析器

http:HTTP模塊

http.client:HTTP協議客戶端

ftplib:FTP協議客戶端

poplib:POP協議客戶端

imaplib:IMAP4協議客戶端

nntplib:NNTP協議客戶端

smtplib:SMTP協議客戶端

smtpd:SMTP伺服器

telnetlib:Telnet客戶端

uuid:RFC4122的UUID對象

socketserver:網絡伺服器框架

http.server:HTTP伺服器

http.cookies:HTTPCookie狀態管理器

http.cookiejar:HTTP客戶端的Cookie處理

xmlrpc:XML - RPC伺服器和客戶端模塊

xmlrpc.client:XML - RPC客戶端訪問

xmlrpc.server:XML - RPC伺服器基礎

ipaddress:IPv4 / IPv6控制庫

多媒體

audioop:處理原始音頻數據

aifc:讀寫AIFF和AIFC文件

sunau:讀寫Sun AU文件

wave:讀寫WAV文件

chunk:讀取IFF大文件

colorsys:顏色系統間轉化

imghdr:指定圖像類型

sndhdr:指定聲音文件類型

ossaudiodev:訪問兼容OSS的音頻設備

國際化

gettext:多語言的國際化服務

locale:國際化服務

編程框架

turtle:Turtle圖形庫

cmd:基於行的命令解釋器支持

shlex:簡單詞典分析

Tk圖形用戶接口

tkinter:Tcl / Tk接口

tkinter.ttk:Tk主題控制項

tkinter.tix:Tk擴展控制項

tkinter.scrolledtext:滾軸文本控制項

開發工具

pydoc:文檔生成器和在線幫助系統

doctest:交互式Python示例

unittest:單元測試框架

unittest.mock:模擬對象庫

test:Python回歸測試包

test.support:Python測試工具套件

venv:虛擬環境搭建

調試

bdb:調試框架

faulthandler:Python反向追蹤庫

pdb:Python調試器

timeit:小段代碼執行時間測算

trace:Python執行狀態追蹤

運行時

sys:系統相關的參數與函數

sysconfig:訪問Python配置信息

builtins:內置對象

main:頂層腳本環境

warnings:警告控制

contextlib:with狀態的上下文工具

abc:虛基類

atexit:出口處理器

traceback:列印或讀取一條棧的反向追蹤

future:未來狀態定義

gc:垃圾回收接口

inspect:檢查存活的對象

site:址相關的配置鉤子(hook)

fpectl:浮點數異常控制

distutils:生成和安裝Python模塊

解釋器

code:基類解釋器

codeop:編譯Python代碼

導入模塊

imp:訪問import模塊的內部

zipimport:從ZIP歸檔中導入模塊

pkgutil:包擴展工具

modulefinder:通過腳本查找模塊

runpy:定位並執行Python模塊

importlib:import的一種實施

Python語言

parser:訪問Python解析樹

ast:抽象句法樹

symtable:訪問編譯器符號表

symbol:Python解析樹中的常量

token:Python解析樹中的常量

keyword:Python關鍵字測試

tokenize:Python源文件分詞

tabnany:模糊縮進檢測

pyclbr:Python類瀏覽支持

py_compile:編譯Python源文件

compileall:按字節編譯Python庫

dis:Python字節碼的反彙編器

pickletools:序列化開發工具

其他

formatter:通用格式化輸出

Windows相關

msilib:讀寫Windows的Installer文件

msvcrt:MS VC + + Runtime的有用程序

winreg:Windows註冊表訪問

winsound:Windows聲音播放接口

Unix相關

posix:最常用的POSIX調用

pwd:密碼資料庫

spwd:影子密碼資料庫

grp:組資料庫

crypt:Unix密碼驗證

termios:POSIX風格的tty控制

tty:終端控制函數

pty:偽終端工具

fcntl:系統調用fcntl()和ioctl()

pipes:shell管道接口

resource:資源可用信息

nis:Sun的NIS的接口

syslog:Unix 日誌服務

以上就是對Python內置各個模塊的簡要總結,建議收藏此文,後面做項目時再從中檢索。歡迎大家在留言中補充你常用的Python模塊。

_往期文章推薦_

相關焦點

  • 我把 Python 的 200個標準庫整理出來了
    作者 | Emily來源 | Python與算法社區當我們下載Python安裝包的時候,裡面就已經包含了大量的內置庫(內褲),也稱為「標準庫他們能實現很多系統級的操作,如:文件IO、網絡連接、內存操作等,可以說標準庫是Python的根基!那Python的標準庫到底有多少個?都是做什麼用的?今天我們就來整理一下!首先Python標準庫到底有多少個?豬哥粗暴的統計了下在 280個左右。
  • Python 標準庫之 JSON
    JSON首先我們參考《維基百科》中的相關內容,來對 JSON 做如下介紹:JSON ( JavaScript Object Notation ) 是一種由道格拉斯構想設計、輕量級的數據交換語言,以文字為基礎,且易於讓人閱讀。
  • 標準庫的自我介紹
    熟悉「標準庫」是學習編程必須要做的事,所以今天我們就來學習一下標準庫。safe_tuple', '_sys', '_types', '_wrap_bytes_repr', 'isreadable', 'isrecursive', 'pformat', 'pprint', 're', 'saferepr']對 dir 我們並不陌生,從結果中可以看到 pprint 的屬性和方法,其中有的是以單下劃線
  • Python程式設計師進階之路:從新手到高手的100個模塊
    ,真實反映了 python 程式設計師在成長過程中的一些困惑。英漢小詞典pythoneer - 指所有用python語言開發程序的人pythonista - 意為資深的、追求質量和品味的python開發者本文所列舉的這100個模塊,是在工作和學習中用過的或者正在學習的,算是學習總結。希望對處在迷茫中的程式設計師有所幫助。
  • Python日課-2.4-pip的使用
    庫分為兩種,一種是標準庫,一種是外部庫(第三方庫)。庫和模塊這裡的庫(LIbrary)和模塊(MOdule)是同義語。Python 中的標準叫法是模塊(Module),但業界有一種更通用的叫法是庫(Library)。這種通用的叫法可能主要來自於 C/C++ 語言的標準庫的概念。
  • Python標準庫系列教程——functools
    python集中營functools, itertools, operator是Python標準庫為我們提供的支持函數式編程的三大模塊,合理的使用這三個模塊,我們可以寫出更加簡潔可讀的Pythonic代碼,本次的系列文章將介紹並使用這些python自帶的標準模塊,系列文章分篇連載,此為第二篇,有興趣的小夥伴後面記得關注學習哦!
  • Serverless 架構下 Python 輕鬆搞定圖像分類
    簡介: 本文將會通過一個有趣的 Python 庫,快速將圖像分類的功能搭建在雲函數上,並且和 API 網關結合,對外提供 API 功能,實現一個 Serverless 架構的「圖像分類 API」。前言圖像分類是人工智慧領域的一個熱門話題。通俗解釋就是,根據各自在圖像信息中所反映的不同特徵,把不同類別的目標區分開來的圖像處理方法。
  • Python的sys標準庫的常用方法
    微信關注 @數據分析師攻略 公眾號關注、學習更多數據分析的知識與資訊------sys標準庫是Python一個自帶庫,無需單獨安裝,可以直接導入使用。>2.查看搜索模塊的路徑3.查看當前平臺4.查看默認編碼5.查看解釋器版權資訊6.退出程序/狀態碼以上就是這篇文章介紹sys庫常用的方法內容了,希望內容對大家的學習或者工作具有一定的參考學習價值
  • Python 標準庫之 OS
    本文字數:4255 字閱讀本文大概需要:11 分鐘寫在之前在昨天的文章(Python 標準庫之 sys & copy)中,我們介紹了 Python 標準庫中的 sys 和 copy,不知道你掌握了多少。
  • 最全 Python 算法實現資源匯總!
    下文中,筆者首先對項目的整體內容進行了一個歸納,之後為大家選取了幾個內容比較豐富的部分,供大家更高效地使用這一資源。項目概覽這個項目為大家匯總了Python標準庫實現的大部分算法,對於一些神經網絡模型也有所涉及。在代碼的效率上,該項目的內容可能並沒有 Python 標準庫那樣高效,但是作為一個學習資源還是很值得一讀。下面對項目的內容進行一個大概的梳理。
  • 超簡單Python時間標準庫time的使用
    前言在python中包含了最簡單的處理時間的標準庫,time庫能夠表達計算機時間,提供獲取系統時間並格式化輸出的方法
  • 阿里P7工程師耗時兩天整理的292道python大廠面試題,內含解析!
    小編為了大家整理兩天,今天它來了python大廠292道面試題。希望大家能夠希望!292道python大廠面試題學習python的優點是什麼?,應該分開依次導入道路應按照以下順序導入a、標準庫導入b、相關的第三方庫導入c、本地應用程式的庫導入在表達式中避免無關的空格
  • Python程式設計師最常犯的10個錯誤,你中招了嗎?
    鑑於此,本文列出了Python開發人員常犯的10個小錯誤,資深程序猿也難免會中招哦。本文供Python高級開發人員參考,Python小白可以參考下面這篇文章:http://www.onlamp.com/pub/a/python/2004/02/05/learn_python.html
  • 給伸手黨的福利:Python 新手引導
    結合自身的學習經驗以及與很多自學者的溝通了解,我們整理出一條可操作性較強的自學路線,同時收集了多種形式的 Python 優質學習資源,供諸位尚未入門或剛入門不久的同學參考。0. 心態準備編程是一門技術,也可說是一門手藝。如同書法、繪畫、樂器、雕刻等,技藝純熟的背後肯定付出了長時間的反覆練習。
  • 我整理了大數據入門帖子200篇並用python分析了一下
    部分大數據入門帖子000我通過 數據挖掘入門,自學人工智慧,python入門,nlp是什麼,統計學入門,大數據入門,爬蟲是什麼意思,學習大數據要什麼基礎,數據分析師適合女生嘛,自學大數據該怎麼入手等63個入門相關關鍵問題,找了200篇左右的高票入門帖子。
  • python分類-決策樹
    嘿嘿,這禮拜隨便研究了個入門的知識點,python決策樹。這次學會的只是一個入門級別的python決策樹案例,還是給大家分享下吧。
  • 求職大視野 | 編程零基礎應當如何開始學習 Python?
    零基礎學編程,用python入門是個不錯的選擇,雖然國內基本上還是以c語言作為入門開發語言,但在國外
  • 計算機二級《Python語言程序設計 最新版》電子教案PDF,請收下
    今天給大家整理了電子版的全國計算機等級考試二級教程,Python 語言程序設計 ,後面有電子版截圖和下載。
  • Python內置函數一覽表
    內置函數和標準庫函數是不一樣的。Python 解釋器也是一個程序,它給用戶提供了一些常用功能,並給它們起了獨一無二的名字,這些常用功能就是內置函數。Python 解釋器啟動以後,內置函數也生效了,可以直接拿來使用。Python 標準庫相當於解釋器的外部擴展,它並不會隨著解釋器的啟動而啟動,要想使用這些外部擴展,必須提前導入。
  • 《流暢的python》閱讀筆記(上)
    對於初學python的人來說, 基礎大概也就夠用了, 但往往由於夠用讓他們忘了深入, 去精通. 我們希望全面了解這個語言的能力邊界, 可能一些高級的特性並不能馬上掌握使用, 因此這本書是工作之餘, 還有餘力的人來閱讀, 我這邊就將其有用, 精妙的進階內容整理出來.這本書有21個章節, 整理也是根據這些章節過來.