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

Python 标准库

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

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.特定于平台的模块

相关推荐

Go语言标准库中5个被低估的强大package

在Go语言的世界里,开发者们往往对fmt、net/http这些“明星包”耳熟能详,却忽略了标准库里藏着的一批“宝藏工具”。它们功能强大却低调内敛,能解决并发控制、内存优化、日志管理等核心问题。今天就带...

作为测试人,如何优雅地查看Log日志?

作为一名测试工程师,测试工作中和Linux打交道的地方有很多。比如查看日志、定位Bug、修改文件、部署环境等。项目部署在Linux上,如果某个功能发生错误,就需要我们去排查出错的原因,所以熟练地掌握查...

Java 从底层与接口实现了解String、StringBuffer、StringBuilder

String、StringBuffer和StringBuilder的接口实现关系:String:字符串常量,字符串长度不可变。Java中String是immutable(不可变)的。用于存放字符...

FluentData 从入门到精通:C#.NET 数据访问最佳实践

简介FluentData是一个微型ORM(micro-ORM),主打「FluentAPI」风格,让开发者在保持对原生SQL完全控制的同时,享受链式调用的便捷性。它与Dapper、Massi...

团队协作-代码格式化工具clang-format

环境:clang-format:10.0.0前言统一的代码规范对于整个团队来说十分重要,通过git/svn在提交前进行统一的ClangFormat格式化,可以有效避免由于人工操作带来的代码格式问题。C...

C# 数据操作系列 - 15 SqlSugar 增删改查详解(超长篇)

0.前言继上一篇,以及上上篇,我们对SqlSugar有了一个大概的认识,但是这并不完美,因为那些都是理论知识,无法描述我们工程开发中实际情况。而这一篇,将带领小伙伴们一起试着写一个能在工程中使用的模...

Mac OS 下 Unix 使用最多的100条命令(收藏级)

MacOS内置基于Unix的强大终端(Terminal),对开发者、运维工程师和日常用户来说,掌握常用的Unix命令是提升效率的关键。本文整理了100条在MacOS下最常用的U...

C语言字符串操作总结大全(超详细)

C语言字符串操作总结大全(超详细)1)字符串操作strcpy(p,p1)复制字符串strncpy(p,p1,n)复制指定长度字符串strcat(p,p1)附加字符串strncat...

经常使用到开源的MySQL,今天我们就来系统地认识一下

作为程序员,我们在项目中会使用到许多种类的数据库,根据业务类型、并发量和数据要求等选择不同类型的数据库,比如MySQL、Oracle、SQLServer、SQLite、MongoDB和Redis等。今...

电脑蓝屏代码大全_电脑蓝屏代码大全及解决方案

0X0000000操作完成0X0000001不正确的函数0X0000002系统找不到指定的文件0X0000003系统找不到指定的路径0X0000004系统无法打开文件0X0000005拒绝...

8个增强PHP程序安全的函数_php性能优化及安全策略

安全是编程非常重要的一个方面。在任何一种编程语言中,都提供了许多的函数或者模块来确保程序的安全性。在现代网站应用中,经常要获取来自世界各地用户的输入,但是,我们都知道“永远不能相信那些用户输入的数据”...

css优化都有哪些优化方案_css性能优化技巧

CSS优化其实可以分成几个层面:性能优化、可维护性优化、兼容性优化以及用户体验优化。这里我帮你梳理一份比较系统的CSS优化方案清单,方便你参考:一、加载性能优化减少CSS文件体积压缩CSS...

筹划20年,他终于拍成了这部电影_筹划20年,他终于拍成了这部电影英语

如果提名好莱坞最难搞影星,你第一时间会联想到谁?是坏脾气的西恩·潘,还是曾因吸毒锒铛入狱的小罗伯特·唐尼,亦或是沉迷酒精影响工作的罗素·克劳?上述大咖,往往都有着这样或那样的瑕疵。可即便如此,却都仍旧...

Keycloak Servlet Filter Adapter使用

KeycloakClientAdapters简介Keycloakclientadaptersarelibrariesthatmakeitveryeasytosecurea...

一些常用的linux常用的命令_linux常用命令有哪些?

在Linux的世界里,命令是与系统交互的基础。掌握常用命令不仅能让你高效地管理文件、进程和网络,还能为你进一步学习系统管理和自动化打下坚实的基础。本文将深入探讨一些最常用且功能强大的Linux...