关于Python标准库

众所周知,Python是一个依赖强大的组件库完成对应功能的语言,为了便捷实现各项功能,前辈大牛们打造了多种多样的工具库公开提供给大众使用,而越来越多的库已经因为使用的广泛和普遍及其功能的强大,已经成为Python的标准库。

时至今日,Python 标准库已经非常庞大,所提供的组件涉及范围十分广泛,正如本文后面的内容中所显示的。这个库包含了多个内置模块 (以 C 编写),Python 程序员必须依靠它们来实现系统级功能,例如文件 I/O,此外还有大量以 Python 编写的模块,提供了日常编程中许多问题的标准解决方案。其中有些模块经过专门设计,通过将特定平台功能抽象化为平台中立的 API 来鼓励和加强 Python 程序的可移植性。

Windows 版本的 Python 安装程序通常包含整个标准库,往往还包含许多额外组件。对于类 Unix 操作系统,Python 通常会分成一系列的软件包,因此可能需要使用操作系统所提供的包管理工具来获取部分或全部可选组件。

在这个标准库以外还存在成千上万并且不断增加的其他组件 (从单独的程序、模块、软件包直到完整的应用开发框架),均可以在网络上搜索到并下载使用。

文本

string:通用字符串操作
re:正则表达式操作
difflib:差异计算工具
textwrap:文本填充
unicodedata:Unicode字符数据库
stringprep:互联网字符串准备工具
readline:GNU按行读取接口
rlcompleter:GNU按行读取的实现函数

二进制数据

struct:将字节解析为打包的二进制数据
codecs:注册表与基类的编解码器

数据类型

datetime:基于日期与时间工具
calendar:通用月份函数
collections:容器数据类型
collections.abc:容器虚基类
heapq:堆队列算法
bisect:数组二分算法
array:高效数值数组
weakref:弱引用
types:内置类型的动态创建与命名
copy:浅拷贝与深拷贝
pprint:格式化输出
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存档文件

文件格式化

csv:读写CSV文件
configparser:配置文件解析器
netrc:netrc文件处理器
xdrlib:XDR数据编码与解码
plistlib:生成和解析Mac OS X.plist文件

加密

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:RFC
3548:Base16、Base32、Base64编码
binhex:binhex4文件编码与解码
binascii:二进制码与ASCII码间的转化
quopri:MIME
quoted - printable数据的编码与解码
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

互联网协议与支持

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汇总篇,200+Python标准库介绍的更多相关文章

  1. Python学习笔记13:标准库之子进程(subprocess包)

    ubprocess包主要功能是运行外部的命令和程序.从这个意义上来说,subprocess的功能与shell类似. subprocess以及经常使用的封装函数 当我们执行python的时候,我们都是在 ...

  2. Python的标准库介绍与常用的第三方库

    Python的标准库介绍与常用的第三方库 Python的标准库: datetime:为日期和时间的处理提供了简单和复杂的方法. zlib:以下模块直接支持通用的数据打包和压缩格式:zlib,gzip, ...

  3. 《挑战30天C++入门极限》C++的iostream标准库介绍(2)

        C++的iostream标准库介绍(2) 接下来我们继续看一下C++风格的串流控制,C++引入了ostringstream.istringstream.stringstream这三个类,要使用 ...

  4. 《挑战30天C++入门极限》C++的iostream标准库介绍(3)

        C++的iostream标准库介绍(3) C语言提供了格式化输入输出的方法,C++也同样,但是C++的控制符使用起来更为简单方便,在c++下有两中方法控制格式化输入输出. 1.有流对象的成员函 ...

  5. 《挑战30天C++入门极限》C++的iostream标准库介绍(1)

        C++的iostream标准库介绍(1) 我们从一开始就一直在利用C++的输入输出在做着各种练习,输入输出是由iostream库提供的,所以讨论此标准库是有必要的,它与C语言的stdio库不同 ...

  6. Python 第一篇:python简介和入门

    一.python简介 1.python下载地址:https://www.python.org/downloads/ Python的创始人为Guido van Rossum.1989年圣诞节期间,在阿姆 ...

  7. Python学习笔记16:标准库多线程(threading包裹)

    Python主要是通过标准库threading包来实现多线程. 今天,互联网时代,所有的server您将收到大量请求. server要利用多线程的方式的优势来处理这些请求,为了改善网络port读写效率 ...

  8. python标准库介绍——27 random 模块详解

    ==random 模块== "Anyone who considers arithmetical methods of producing random digits is, of cour ...

  9. python标准库介绍——12 time 模块详解

    ==time 模块== ``time`` 模块提供了一些处理日期和一天内时间的函数. 它是建立在 C 运行时库的简单封装. 给定的日期和时间可以被表示为浮点型(从参考时间, 通常是 1970.1.1 ...

  10. python标准库介绍——10 sys 模块详解

    ==sys 模块== ``sys`` 模块提供了许多函数和变量来处理 Python 运行时环境的不同部分. === 处理命令行参数=== 在解释器启动后, ``argv`` 列表包含了传递给脚本的所有 ...

随机推荐

  1. 韩国网费比其他国家贵10倍?—— 因网费太高,直播平台 Twitch 宣布2024年2月退出韩国市场

    看新闻,说直播平台 Twitch因为韩国的网费太贵宣布退出韩国,这个新闻给我看纳闷了,从来么有听说过哪个视频或直播公司因为网费贵而关停,这个估计是这种原因关停的第一家吧,于是比较好奇. 相关: htt ...

  2. 强化学习:AC算法中为什么不使用Q函数来表示优势函数

    强化学习中的策略梯度法(PG)不直接使用Q函数作为值函数来进行计算已经在Sutton的PG公式证明中提出,主要作用就是减少方差,因此使用优势函数进行计算.作为PG算法类中最常见的AC类算法有着较多的使 ...

  3. Vue Vine:带给你全新的 Vue 书写体验!

    你好,我是 Kagol,个人公众号:前端开源星球. 上个月和 TinyVue 的小伙伴们一起参加了 VueConf 24 大会,有幸认识沈青川大佬,并了解了他的 Vue Vine 项目,Vue Vin ...

  4. 使用智能AI在农业养殖业中风险预警的应用

    一.前言 之前写过一篇<物联网浏览器(IoTBrowser)-使用深度学习开发防浸水远程报警>文章,主要介绍了通过摄像头麦克风监测浸水报警器有无异常,当出现异常后进行紧急报警并推送微信通知 ...

  5. Linux系统内核的作用

      Linux系统内核在操作系统中扮演着至关重要的角色,其作用主要体现在以下几个方面: 进程管理:内核负责创建和销毁进程,这是操作系统对计算机上正在运行的程序进行管理的核心部分.内核通过调度器对进程进 ...

  6. Edge实验性功能中文翻译

    平行下载 启用平行下载以加速下载速度.- Mac, Windows, Linux, Android #enable-parallel-downloading 已启用 临时恢复 M125 标记 临时恢复 ...

  7. Java如何防御XSS攻击?

    Q1.什么是XSS攻击? 定义很多,这里我找一个比较详细的解释 https://www.cnblogs.com/csnd/p/11807592.html Q2.为什么会有XSS攻击 也看上面的链接 Q ...

  8. curl可以访问虚拟机资源,但是宿主机浏览器不能访问

    如果想从宿主机访问到虚拟机内的php,需要关闭宿主机的代理,并且设置虚拟机内的防火墙不要屏蔽宿主机的ip. 设置虚拟机防火墙方法: 查找宿主机IP:win+r,输入ipconfig 打开虚拟机,输入s ...

  9. Python向IP地址发送字符串

    在Python中,向IP地址发送字符串通常意味着你需要通过某种协议来实现通信.最常见的协议包括TCP和UDP.这里,我将分别给出使用TCP和UDP协议向指定IP地址发送字符串的示例代码. 1.TCP. ...

  10. 防止npm被墙的小技巧

    方法一: 全局安装中国服务器的包管理工具 npm i cnpm --global 下载包的时候用cnpm取代npm 方法二: 在小黑板输入:npm config set registry https: ...