百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

Python 标准库

zhezhongyun 2024-12-31 15:48 102 浏览

Python 的标准库非常丰富,如下面列出的内容所示,其提供了非常多的功能。库包含内置模块 (用 C 编写的) 提供访问系统的功能,如文件 I/O,以及在为发生在日常编程中的许多问题提供标准化的解决方案的 Python 模块。这些模块的一些明确旨在鼓励和加强的 Python 程序的可移植性的抽象掉平台细节到非特定于平台的 Api。

Windows 平台的 Python 安装程序通常包括整个标准库,而且还包含许多额外的组件。对于 unix 操作系统 Python 通常提供作为软件包的集合,因此,它可能需要使用与操作系统提供的包装工具来获取某些或所有的可选组件。

除了标准库,还有正在增长的几千个组件 (从个别程序和模块的软件包到整个应用程序开发框架),可以从 Python 软件包索引下载。

1.介绍

2.内置函数

3.内置常量

3.1常数添加的 site模块

4.内置类型

4.1. 真值测试

4.2.布尔运算——and,or,not

4.3.比较

4.4.数值类型——int,float,complex

4.5.迭代器

4.6.序列——list,tuple,range

4.7.文本序列类型——str

4.8.二进制序列类型——bytes,bytearray,memoryview

4.9.设置类型——set,frozenset

4.10.映射类型 —— dict

4.11.Context Manager Types

4.12.Other Built-in Types

4.13.特殊属性

5.内置异常

5.1基类

5.2具体的异常

5.3警告

5.4异常层次结构

6.文字处理服务

6.1.string——常见的字符串操作

6.2.re——正则表达式操作

6.3.difflib——帮助计算增量

6.4.textwrap——文本包装和填充

6.5.unicodedata——Unicode数据库

6.6.stringprep——互联网字符串

6.7.readline——GNU readline接口

6.8.rlcompleter——对GNU readline功能的完善

7.二进制数据服务

7.1.struct——解释字节二进制数据

7.2.codecs——注册表编解码器和基类

8.数据类型

8.1.datetime——基本日期和时间类型

8.2.calendar——般calendar-related的功能

8.3.collections——容器数据类型

8.4.collections.abc——抽象基类容器

8.5.heapq——堆队列算法

8.6.bisect——数组二分算法

8.7.array——高效的数值数组

8.8.weakref——弱引用

8.9.types——动态创建类型为内置类型和名称

8.10.copy——浅和深拷贝操作

8.11.pprint——打印整洁的数据

8.12.reprlib——备用 repr()实现

8.13.enum——支持枚举

9.数字和数学模块

9.1.numbers——数字抽象基类

9.2.math——数学函数

9.3.cmath——复数的数学函数

9.4.decimal——十进制定点和浮点运算

9.5.fractions——有理数

9.6.random——生成伪随机数

9.7.statistics——数理统计功能

10.函数式编程模块

10.1.tertools——函数创建的高效循环的迭代器

10.2.functools——高阶函数和对可调用对象上的操作

10.3.operator——标准操作功能

11.文件和目录的访问

11.1.pathlib——面向对象的文件系统路径

11.2.os.path——共同路径名操作

11.3.fileinput——遍历行从多个输入流

11.4. stat——解释 stat()的结果

11.5.filecmp——文件和目录的比较

11.6.tempfile——生成临时文件和目录

11.7.glob——Unix风格扩张路径模式

11.8.fnmatch—— Unix文件名模式匹配

11.9.linecache——随机访问的文本行

11.10.shutil——高级文件操作

11.11macpath——Mac OS 9路径操作函数

12.数据持久性

12.1.pickle——Python对象序列化

12.2.copyreg——注册 pickle支持功能

12.3. shelve——Python对象持久性

12.4.marshal——内部Python对象序列化

12.5.dbm——接口Unix的“数据库”

12.6.sqlite3—— 2.0 db api接口,用于SQLite数据库

13.数据压缩和归档

13.1.zlib——与gzip压缩兼容

13.2.gzip——支持gzip文件

13.3.bz2——支持bzip2压缩

13.4.lzma——使用LZMA压缩算法

13.5.zipfile——操作zip文件

13.6.tarfile——读写tar文件

14.文件格式

14.1.csv——CSV文件读和写

14.2.configparser——配置文件解析器

14.3.netrc——netrc文件处理

14.4.xdrlib——编码和解码XDR数据

14.5.plistlib——生成和解析Mac OS X .plist文件

15.加密服务

15.1.hashlib——安全散列和消息摘要

15.2.hmac——基于消息的身份验证

16.通用操作系统服务

16.1.os——各种各样的操作系统的接口

16.2.io——核心处理流工具

16.3.time——时间访问和转换

16.4.argparse——解析命令行选项,参数和sub-commands

16.5.getopt命令行选项—— C风格的解析器

16.6.logging——Python日志的工具

16.7.logging.config——日志配置

16.8.logging.handlers——日志处理程序

16.9.getpass——便携式密码输入

16.10.curses——终端处理单位字符显示

16.11.curses.textpad——文本输入小部件

16.12.curses.ascii——公用ASCII字符

16.13.curses.panel——一个面板堆栈扩展

16.14.platform——访问底层平台的数据

16.15.errno——标准errno系统符号

16.16.ctypes——外国对Python的函数库

17.并发执行

17.1.threading——基于线程的并行

17.2.multiprocessing——基于流程的并行

17.3.concurrent包

17.4.concurrent.futures——启动并行任务

17.5.subprocess——子流程管理

17.6. sched——事件调度器

17.7.queue——同步队列类

17.8.dummy_threading——threading模块的替代品

17.9. _thread——底层线程API

17.10._dummy_thread——_thread模块的替代品

18.进程间通信和网络

18.1. socket——底层网络接口

18.2.ssl—— TLS / SSL套接字对象包装器

18.3.select——等待I / O完成

18.4. selectors——高级I / O多路复用

18.5.asyncio——异步I / O,事件循环,协同程序和任务

18.6.asyncore——异步套接字处理程序

18.7. asynchat——异步套接字命令/响应处理程序

18.8. signal——异步事件处理的程序

18.9. mmap——对内存映射文件的支持

19.互联网数据处理

19.1.email——电子邮件和MIME处理包

19.2. json—— JSON编码和译码器

19.3.mailcap——Mailcap文件处理

19.4. mailbox——以各种格式操作邮箱

19.5.mimetypes——文件名映射到MIME类型

19.6.base64——Base32 ,Base16 Base64, Base85数据编码

19.7.binhex——编码和解码binhex4文件

19.8.binascii——在二进制和ASCII之间进行转换

19.9.quopri——编码和解码MIME quoted-printable数据

19.10.uu——编码和解码的一种编码的程式文件

20.结构化标记处理工具

20.1.html——对超文本标记语言的支持

20.2. html.parser——简单的HTML和XHTML的解析器

20.3. html.entities——定义的HTML实体

20.4.XML处理模块

20.5.xml.etree.ElementTree——ElementTree的XML API

20.6.xml.dom——文档对象模型API

20.7.xml.dom.minidom——最小的DOM实现

20.8.xml.dom.pulldom——支持建设部分DOM树

20.9.xml.sax——支持SAX2解析器

20.10.xml.sax.handler——基类SAX处理程序

20.11.xml.sax.saxutils——SAX公用类

20.12.xml.sax.xmlreader——XML解析器的接口

20.13xml.parsers.expat——快速使用Expat XML解析

21.互联网协议和支持

21.1.webbrowser——方便的浏览器控制器

21.2.cgi——公共网关接口的支持

21.3.cgitb——回溯经历的CGI脚本

21.4.wsgiref——WSGI工具和参考实现

21.5.urllib——URL处理模块

21.6.urllib.request——打开url的可扩展库

21.7.urllib.response——响应urllib所使用的类

21.8.urllib.parse—— 将url解析成组件

21.9.urllib.error——urllib.request提出的异常类

21.10. urllib.robotparser—— robots . txt的解释器

21.11.http—— HTTP模块

21.12.http.client——HTTP客户协议

21.13.ftplib——FTP客户协议

21.14.poplib——POP3协议客户

21.15. imaplib——IMAP4客户协议

21.16.nntplib——NNTP客户协议

21.17.smtplib——SMTP客户协议

21.18.smtpd——SMTP服务器

21.19.telnetlib——Telnet客户机

21.20.uuid——根据RFC 4122得到的UUID对象

21.21.socketserver——网络服务器框架

21.22.http.server—— HTTP服务器

21.23.http.cookies—— HTTP状态管理

21.24.http.cookiejar——为HTTP客户端处理cookies

21.25.xmlrpc——XMLRPC服务器和客户端模块

21.26.xmlrpc.client——xml - rpc客户端访问

21.27.xmlrpc.server——基本的xml - rpc服务器

21.28.ipaddress——IPv4 / IPv6操纵库

22.多媒体服务

22.1. audioop——操作原始音频数据

22.2.aifc——读和写AIFF和AIFC文件

22.3.sunau——读和写 Sun AU文件

22.4.wave——读和写WAV文件

22.5.chunk——读IFF分块数据

22.6.colorsys——颜色系统之间的转换

22.7.imghdr——确定图像的类型

22.8.sndhdr——确定声音文件的类型

22.9.ossaudiodev——访问OSS-compatible音频设备

23.国际化

23.1.gettext——多语种国际化服务

23.2.locale——国际化服务

24.程序框架

24.1.turtle——海龟绘图(一个简单的绘图工具)

24.2.cmd——支持面向行的命令解释器

24.3.shlex——简单的词法分析

25.Tk的图形用户界面

25.1.tkinter—— Tcl/Tk的Python接口

25.2.tkinter.ttk—— Tk主题的小部件

25.3.tkinter.tix——扩展Tk的部件

25.4.tkinter.scrolledtext——滚动文本小部件

25.6.IDLE

25.7.其他图形用户界面的包

26.开发工具

26.1.typing——支持类型提示

26.2.pydoc——文档生成器和在线帮助系统

26.3.doctest——测试交互式Python示例

26.4.unittest——单元测试框架

26.5.unittest.mock——模拟对象库

26.6.unittest.mock——开始

26.7.2to3——2到3代码翻译

26.8.test——为Python 回归的测试包

26.9.test.support——公用的Python测试套件

27.调试和性能分析

27.1.bdb——调试器框架

27.2.faulthandler——把Python回溯

27.3.pdb——Python调试器

27.4.Python分析器

27.5. timeit——测量小代码片段的执行时间

27.6.trace——跟踪或Python语句执行跟踪

27.7. tracemalloc——跟踪内存分配

28.软件打包和分发

28.1.distutils——构建和安装Python模块

28.2.ensurepip——引导 pip安装程序

28.3.venv——创建虚拟环境

28.4.zipapp——管理python可执行zip档案

29.Python运行时的服务

29.1.sys——系统特定的参数和功能

29.2.sysconfig——提供Python的配置信息

29.3.builtins——内置对象

29.4._main——顶级脚本环境

29.5.warnings——预警控制

29.6.contextlib——公用 with-statement 的上下文

29.7.abc——抽象基类

29.8.atexit——退出处理程序

29.9.traceback——打印或检索一个堆栈回溯

29.10.future——未来的声明中定义

29.11.gc——垃圾收集器接口

29.12.inspect——检查活动对象

29.13.site——特定站点配置钩

29.14.fpectl——浮点异常控制

30.自定义Python解释器

30.1.code——翻译基类

30.2. codeop——编译Python代码

31.导入模块

31.1.zipimport——从Zip文档导入模块

31.2.pkgutil——包扩展工具

31.3.modulefinder——找到模块使用的脚本

31.4.runpy——定位和执行Python模块

31.5.importlib—— import的实现

32.Python语言服务

32.1.parser——访问Python解析树

32.2.ast——抽象语法树

32.3.symtable——访问编译器的符号表

32.4.symbol——常量使用Python解析树

32.5.token——常量使用Python解析树

32.6.keyword——Python测试关键字

32.7.tokenize——对Python源代码编译器

32.8.tabnanny——检测模棱两可的缩进

32.9.pyclbr——Python类浏览器支持

32.10.py_compile——编译Python源文件

32.11.compileall——Byte-compile Python库

32.12.dis——反汇编程序Python字节码

32.13.pickletools——泡菜开发人员的工具

33.各种各样的服务

33.1.formatter——通用的输出格式

34.MS Windows特定的服务

34.1. msilib——读和写微软安装程序文件

34.2.msvcrt——MS vc++运行时有用的程序

34.3 winreg——Windows注册表访问

34.4.winsound——声音播放界面窗口

35.Unix特定服务

35.1.posix——最常见的POSIX系统调用

35.2.pwd——密码数据库

35.3spwd——影子密码数据库

35.4.grp——集团数据库

35.5crypt——功能检查Unix密码

35.6 termios——POSIX风格遥控控制

35.7. tty——终端控制功能

35.8. pty——伪终端工具

35.9 fcntl—— fcntl和 ioctl系统调用

35.10. pipes——接口外壳管道

35.11.resource——资源使用信息

35.12. nis——Sun’s NIS(黄页) 接口

35.13.syslog—— Unix syslog库进程

36.取代模块

36.1.optparse——解析器的命令行选项

36.2.imp——访问 import内部

37.非法模块

37.1.特定于平台的模块

相关推荐

Python入门学习记录之一:变量_python怎么用变量

写这个,主要是对自己学习python知识的一个总结,也是加深自己的印象。变量(英文:variable),也叫标识符。在python中,变量的命名规则有以下三点:>变量名只能包含字母、数字和下划线...

python变量命名规则——来自小白的总结

python是一个动态编译类编程语言,所以程序在运行前不需要如C语言的先行编译动作,因此也只有在程序运行过程中才能发现程序的问题。基于此,python的变量就有一定的命名规范。python作为当前热门...

Python入门学习教程:第 2 章 变量与数据类型

2.1什么是变量?在编程中,变量就像一个存放数据的容器,它可以存储各种信息,并且这些信息可以被读取和修改。想象一下,变量就如同我们生活中的盒子,你可以把东西放进去,也可以随时拿出来看看,甚至可以换成...

绘制学术论文中的“三线表”具体指导

在科研过程中,大家用到最多的可能就是“三线表”。“三线表”,一般主要由三条横线构成,当然在变量名栏里也可以拆分单元格,出现更多的线。更重要的是,“三线表”也是一种数据记录规范,以“三线表”形式记录的数...

Python基础语法知识--变量和数据类型

学习Python中的变量和数据类型至关重要,因为它们构成了Python编程的基石。以下是帮助您了解Python中的变量和数据类型的分步指南:1.变量:变量在Python中用于存储数据值。它们充...

一文搞懂 Python 中的所有标点符号

反引号`无任何作用。传说Python3中它被移除是因为和单引号字符'太相似。波浪号~(按位取反符号)~被称为取反或补码运算符。它放在我们想要取反的对象前面。如果放在一个整数n...

Python变量类型和运算符_python中变量的含义

别再被小名词坑哭了:Python新手常犯的那些隐蔽错误,我用同事的真实bug拆给你看我记得有一次和同事张姐一起追查一个看似随机崩溃的脚本,最后发现罪魁祸首竟然是她把变量命名成了list。说实话...

从零开始:深入剖析 Spring Boot3 中配置文件的加载顺序

在当今的互联网软件开发领域,SpringBoot无疑是最为热门和广泛应用的框架之一。它以其强大的功能、便捷的开发体验,极大地提升了开发效率,成为众多开发者构建Web应用程序的首选。而在Spr...

Python中下划线 ‘_’ 的用法,你知道几种

Python中下划线()是一个有特殊含义和用途的符号,它可以用来表示以下几种情况:1在解释器中,下划线(_)表示上一个表达式的值,可以用来进行快速计算或测试。例如:>>>2+...

解锁Shell编程:变量_shell $变量

引言:开启Shell编程大门Shell作为用户与Linux内核之间的桥梁,为我们提供了强大的命令行交互方式。它不仅能执行简单的文件操作、进程管理,还能通过编写脚本实现复杂的自动化任务。无论是...

一文学会Python的变量命名规则!_python的变量命名有哪些要求

目录1.变量的命名原则3.内置函数尽量不要做变量4.删除变量和垃圾回收机制5.结语1.变量的命名原则①由英文字母、_(下划线)、或中文开头②变量名称只能由英文字母、数字、下画线或中文字所组成。③英文字...

更可靠的Rust-语法篇-区分语句/表达式,略览if/loop/while/for

src/main.rs://函数定义fnadd(a:i32,b:i32)->i32{a+b//末尾表达式}fnmain(){leta:i3...

C++第五课:变量的命名规则_c++中变量的命名规则

变量的命名不是想怎么起就怎么起的,而是有一套固定的规则的。具体规则:1.名字要合法:变量名必须是由字母、数字或下划线组成。例如:a,a1,a_1。2.开头不能是数字。例如:可以a1,但不能起1a。3....

Rust编程-核心篇-不安全编程_rust安全性

Unsafe的必要性Rust的所有权系统和类型系统为我们提供了强大的安全保障,但在某些情况下,我们需要突破这些限制来:与C代码交互实现底层系统编程优化性能关键代码实现某些编译器无法验证的安全操作Rus...

探秘 Python 内存管理:背后的神奇机制

在编程的世界里,内存管理就如同幕后的精密操控者,确保程序的高效运行。Python作为一种广泛使用的编程语言,其内存管理机制既巧妙又复杂,为开发者们提供了便利的同时,也展现了强大的底层控制能力。一、P...