作者:empty 页数:1957 出版社:empty |
reference-index描述了Python语言的具体语法和语义, 这份库参考则介绍了与Python一同发行的标准库.它还描述了通常包含在Python发行版中的一些可选组件.Python标准库非常庞大, 所提供的组件涉及范围十分广泛, 正如以下内容日录所显示的.这个库包含了多个内置模块(以C编写) , Python程序员必须依靠它们来实现系统级功能, 例如文件I/O, 此外还有大量以Python编写的模块, 提供了日常编程中许多问题的标准解决方案、其中有些模块经过专门设计, 通过将特定平台功能抽象化为平台中立的API来鼓和加强Python程序的可移植性。Windows版本的Python安装程序通常包含整个标准库, 往往还包含许多额外组件, 对于类Unix操作系统.Python通常会分成一系列的软件包, 因此可能需要使用操作系统所提供的包管理工具来获取部分或全部可选组件:在这个标准库以外还存在成千上万并且不断增加的其他组件(从单独的程序、模块,软件包直到完整的应用开发框架) , 访问Python包索引即可获取这些第三方包。
Python库*中包含了儿种不同的组件.它包含通常被视为语言“核心”中的一部分的数据类型, 例如数字和列表。对于这些类型, Python语言核心定义了文字的形式,并对它们的语义设置了些约束,但没有完全定义语义。(另一方面:语言核心确实定义了语法属性,如操作符的拼写和优先级。)这个库也包含了内置函数和异常---不需要import语句就可以在所有Python代码中使用的对象。有一些是由语言核心定义的,但是许多对于核心语义不是必需的,并且仅在这里描述。不过这个库主要是由一系列的模块组成,这些模块集可以不同方式分类。有些模块是用C编写并内置于Python解释器中:一些模块则是用Python编写并以源码形式导人。有些模块提供专用于Python的接,例如打印栈追踪信息:有些模块提供专用于特定操作系统的接,例如操作特定的硬件;另一些模块则提供针对特定应用领城的接, 例如万维网, 有些模块在所有更新和移植版本的Python中可用:另一些模块仅在底层系统支持或要求时可用; 还有些模块则仅当编译和安装Python时选择了特定配置选项时才可用.本手册以”从内到外”的顺序组织:首先描述内置函数、数据类型和异常,最后是根据相关性进行分组的各种模块,这意味着如果你从头开始阅读本手册, 并在感到厌烦时蔬到下一章, 你仍能对Python库的可用模块和所支持的应用领域有个大致了解、当然,你并非必须如同读小说一样从头读到尾一你也可以先浏览内容目录(在手册开头),或在索引(在手册末尾)中杳找某个特定函数、模块或条目、最后,如果你喜欢随意学习某个主题, 你可以选择一个随机页码(参见random模块) 并读上一两小节。无论你想以怎样的联序阅读本手册,还是建议先从内置函数这一章开始,因为本手册的其余内容都需要你熟悉其中的基本概念让我们开始吧!1.1可用性注释·如果出现“可用性:Unix”注释, 意味着相应函数通常存在于Unix系统中。但这并不保证其存在·如果没有单独说明, 所有注明“可用性:Unix”的函数都支持基于Unix核心构建的MacOSX系统。The Python Library Reference, 发布3.8.1于某个特定的操作系统中。
返回一个新的“bytes”对象, 是一个不可变序列, 包含范围为0 =x 256的整数.byte a是by cear tay的不可变版本-它有其中不改变序列的方法和相同的索引、切片操作.因此, 构造两数的实参和bytearray l) 相同.字节对象还可以用字面值创建, 参见strings.另见二进制序列英壁---bytes, by fear ri ny, memory view, bytes对象和bytes和bytearray操作,如果参数object是可调用的就返回True, 否则返回False。如果返回True, 调用仍可能失败, 但如果返回ral se, 则调用obj eet将肯定不会成功。请注意类是可调用的(调用类将返回一个新的实例) :如果实例所属的类有_e all_() 則它就是可调用的
返回Unicode码位为整数i的字符的字符申格式, 例如, chr(97) 返回字符申'a', chr{8364)返回字符巾'e'.这是ord() 的遵函数。实参的合法范困是0到1.114.111(16进制表示是0x10FFFF).如果i超过这个范围,会触发Value Err oz异常。把一个方法封装成类力法。一个类方法把类自己作为第一个实参,就像一个实例方法把实例自己作为第一个实参。请用以下习惯来声国类方法:class c:Qc la same the d这样的形式称为函数的decorator-详情参阅function,类方法的调用可以在类上进行(例如C.f()也可以在实例上进行(例如C0).f().其所属类以外的类实例会被忽略、如果类方法在其所属类的派生类上调用,则该派生类对象会被作为隐含的第一个参数被传人。类方法与C++或Java中的静态方法不同.如果你需要后者, 请参阅static method,想了解更多有关类方法的信息, 请参阅types.将soir ce编译成代码或AST对象。代码对象可以被exec() 或eval() 执行。s arce可以是常规的字符中, 字节字符中, 或者AST对象。参见ast模块的文档了解如何使用AST对象。ie name实参需要是代码读取的文件名:如果代码不需要从文件中读取, 可以传人一些可辨识的值(经常会使用'cstring>*) 。mode实参指定了编译代码必须用的模式。如果source是语句序列, 可以是'exec'; 如果是单一表达式, 可以是‘eval'; 如果是单个交互式语句, 可以是'single', (在最后一种情况下, 如果可选参数fi ags和dont_in her ir控制在编译source时要用到哪个future语句。如果两者都未提供(或都为零) 则会使用调用compl le() 的代码中有效的future语句来编译代码、如果给出了flags参数但没有dont_inherit(或是为零) 则flags参数所指定的以及那些无论如何都有效的future语句会被使用.如果dont_in her i为一个非零整数, 则只使用flags参数-在调用外围有效的future语句将被忽Future语句使用比特位来指定, 多个语句可以通过按位或来指定。具体特性的比特位可以通过futu ze模块中的_Feature类的实例的compiler_flag属性来获得,可选参数fiigs还会控制是否允许编译的源码中包含最高层级await, a syne for和a synewith, 当设定了比特位ast.Py CP_ALLOW_TOP_LEVEL_AWAIT时, 所返回代码对象在co_code中设定了CO_COROUTINE, 并可通过await eval(code_object) 交互式地执行.opin ze实参指定编译器的优化级别:默认值-1选择与解释器的-0选项相同的优化级别、显式级别为0(没有优化; __debug_为真) .1(断言被删除, __debug_为假) 或2(文档字符串如果编译的源码不合法, 此函数会触发Syntax Brr or异常:如果源码包含null字节, 则会触如果您想分析Python代码的AST表示, 请参阅ast, parse() .引发一个审计事件compile附带参数source, filename。注解:在'single'或'eval'模式编译多行代码字符串时, 输入必须以至少一个换行符结尾。警告:在将足够大或者足够复杂的字符半编译成AST对象时, Python解释器有可能因为Python在3.2版更改:允许使用Windows和Mac的换行符.在'exec'模式不再需要以换行符结尾、增加在3.5版更改:之前sur ce中包含nll字节的话会触发TypeError异常.3.8新版功能:ast.Py CF_ALLOW_TOP_LEVEL_AWAIT现在可在旗标中传人以启用对最高层级返回值为re ul+imag*1j的复数, 或将字符中或数字转换为复数。如果第一个形参是字符中, 则它被解释为一个复数,并且函数调用时必须没有第二个形参。第二个形参不能是字符串,每个实参都可以是任意的数值类型(包括复数) , 如果省略了imag, 则默认值为零, 构造函数会像Int和rlo at对于一个普通Python对象x, complex{x) 会委托给x._complex__0.如果___complex__()未定义则将回退至__float__(, 如果_float() 未定文则将退至__index_0.注解:当从字符申转换时, 字符申在+或-的周围必须不能有空格.例如complex('1+2j) 是在3.8版更改:如果complex() 和float() 未定义則回退至index) .sec are z(/相关的函数。实参是一个对象和一个字符半, 该字符中必须是对象的某个属性。如果对象允许, 该函数将删除指定的属性。例如i el attr[x, 'fao bar') 等价于del x.foobar.创建一个新的宁典。dict对象是一个字典类。参见dict和映射共型---dict了解这个类,其他容器类型, 请参见内置的I Ist, set和tap ie类, 以及colle o tions模块,如果没有实参,则返回当前本地作用域中的名称列表.如果有实参,它会尝试返回该对象的有效属如果对象有一个名为__dir__O的方法, 那么该方法将被调用, 并且必须返回一个属性列表。这允许实现自定义__getattr__0) 或__getattribute__() 函数的对象能够自定义dir来报
1概述
2内置函数
3内置常量
可用性注释
逻辑值检测:
尔运算-and, nr, nat
比较
数字类型-n.hbt.cmi
迭代器类型.
序列类型-1sE, t up id.range
文本序列类型-8tr.
3.1由sit模块添加的常量
4内置类型
4.10映射类型-dict,
4.11
4.12其他内置类型.:
4.13特殊属性,
5内置异常
二进制序列类型-bytes.bytearray.memr
集合类型-set, frzen set
上下文管理器类型
基类.·
具体异常.
31警告异常层次结构
文本处理服务
6.1at ring一常见的字符串操作.
6.2re-正则表达式操作
6.3dirr lib计算差异的辅助工具
6.4tex c wrap一文本自动换行与填充:
6.5unicde dataUnicde数据库
6.6at ring prep一因特网字符串预备.
6.7readlineGNU readline接
6.8ficmplecerGNUreadlne的补全函数,
二进制数据服务
7.1s true t符字节串解读为打包的二进制数据
7.2cde ca一编解码器注册和相关基类
8数据类型
8.1datetime一基本的日期和时间类型:
8.2 alendar-日历相关函数,
8.3cllectins容器数据类型
8.4cll uc tins.ab-容器的抽象基类
8.5heap q一堆队列算法
8.6bisect一数组二分查找算法.
8.7array一高效的数值数组.
8.8weakref一弱引用
8.9type a-动态类型创建和内置类型名称
8.10cpy-浅层(shallw) 和深层(deep) 复制操作
8.11p print一数据美化输出
8.12reprlib一另一种repr() 实现
8.13enum对枚举的支持.
9数字和数学模块
9.1number a-数字的抽象基类.
9.2math-数学函数.
9.3c math一关于复数的数学函数
9.4decimal一十进制定点和浮点运算
9.5fra tins一分数.
9.6randm一生成伪随机数+.
9.7seat istics一数学统计函数
10函数式编程模块
10.1itertla一为高效循环而创建代器的函数
10.2func cl a-高阶函数和可调用对象上的操作
10.3 peratr一标准运算符替代函数.
11文件和目录访问
11.1pathlib一面向对象的文件系统路径.
11.2a.path-常用路径操作
I 1.3flle input一迷代来自多个输人流的行
11.4ata一解析stat() 结果
i15filecmp-文件及目录的比较,
11.6 tempfile一生成临时文件和目录,
11.7glb-Unix风格路径名模式扩展
11.8fn match-Unix文件名模式匹配
11.9 line cache随机读写文本行, .
11.10shut一高阶文件操作.
12数据持久化
12.1 pickle-Pythn对象序列化.
12.2cpyceg注册配合pickle模块使用的函数
12.3she1ve-Pythn对象持久化.
12.4 marshal一内部Pythn对象序列化.
12.5dbm一Unix 数据库”接
12.6aq1i5e 3SQLite数据库DB-API 2.0接模块
13数据压缩和存档
13.1z1ib-与gzip兼容的压缩.
13.2gzip一对gzip格式的支持.
13.3bz 2一对bzip 2压缩算法的支持
13.41zma-用LZ MA算法压缩.
13.5zipfile-使用ZIP存档:
13.6tar file读写lar门档文件
14.1csv-CSV文件读写
14.2 cnfigparser-Cn h gura tnle parser.
i43netremnetrefe prcess ng.
144xdrlib-Encde and dec s de XDR data.
143p 115-1ibGenealeandparsMacsxp lise mes
15加密服务
15.1hashlib一安全哈希与消息柄要.
15.2hmac一基于密钥的消息验证.
15.3 secret a—Generale see ure randm numbers fr managing sec res
16通用操作系统服务
16.1a一各种各样的操作系统接,
16.21-处理流的核心工具,
16.3time-时间的访问和转换
1.4argparae一命今行选项, 数和子命令解析器
16.5getpt-C-style parser fr cmmand linc ptins
16.6lgging-Pythn的日志记录工具.6
16.7lgging.cnfig一日志记录配置
16.8 lgging.handlers日志处理, .,
16.9getpass-便携式密码输人工具
16.10cursea终蜡字符单元显示的处理.
16.11cur5ns.textpad-Text n put widger fr curses prgrams
16.12curses.ascii-Utl ties fr ASCII characters.
16.13curses-panel-A panel stack extensin fr curses
16.14 platfrm一获取底层平台的标识数据
16.15errn-Standard er m system symbls
16.16ccypeaPythn的外部函数库-
17并发执行
17.1 threading-基于线程的并行.
17.2 multiprcessing基于进程的并行
i73muiti prcessing.shared_nem zy可从进
17.4 cncurrent包.
1.3ancuffent.ucu reg启动并行任务
17.6sub prcess一子进程管理
17.7sched-事件调度器
17.8queue-.个同步的队列类
179_thread一底层多线程API.
17.10_dummy_thread-_thread的替代模块.
1711qummy_threading-可直接替代th rading模块.
18 cntext vars-Cntext Variables
18.1 Cntext Variables.
18.2Mamial Cntext Management
18.3asynci supprt.
19网络和进程间通信
19.1aayne1c一异步I/.
19.2ac ket一底层网络接.-.
19.3aa 1TLS/SSL wrapper fr scket bjects
194ae leet一等待I/完成
19.5 selectrs一高级1/0复用库
19.6 asyncre异步scket处理器
19.7asynchat一异步sckel指令/响应处理器
19.8 signal一设置异步事件处理程序
19.9mmap一内存映射文件支持.
20互联网数据处理
20.1 email一电子邮件与MIME处理包.
20.2jsn-JSN编码和解码器
20.3mailcap-Mail ap文件处理.
20.4mailbxManipulleml bxes in var j us frm as,
20.5 mimetypes-Map filenames t MIMEtypes.,
20.6bas 54-Base 16.Base 32, Base 64.Base 85数据编码
20.7binhex-对binhex 4文件进行编码和解码.
20.8binascii一二进制和ASCII码互转.
20.9qupri一编码与解码经过MIME转码的可打印数据.
20.10uu对uuencde文件进行编码与解码:
21结构化标记处理工具
21.1html一超文本标记语言支持.-++
212hcml.para er一简单的HTML和XHTML解析器.
21.3html.entities-HTML一般实体的定义.
214XML处理模块.
21.5xml.etree.ElementTree-ElementTree XML API.
216xml.dm-The Dcument bject Mdel API,
21.7xml.ccm.mini dmMmimalDMimpementatin,
218xm1.cm, pull dm.-Supprt fr buik ding partial DM trees
21.9xml.aax.Supprt fr SAX 2 parsers.
21.10xm 1.sax.handler Base classes fr SAX handers.
21.11xml, sax.sax utils=SAX Utl ities.,
21.12xml.sax.xmlreader-Interface fr XMLparser s.
2113xml.parsers.expatFast XML parsing using Expat
22瓦联网协议和支持
22.1webbrwser一方便的Web浏览器控制器
22.2cg 1-Cmmn Gateway Interface supprt.
223egitb一儿于CGl脚本的回溯管理器.
224wagirer-WSGIUltesandRelerence Implemen a in
225urllib-URL处理模块.
226uriiib.re uest一用于打开URL的可扩展库
22.7urllib.respn aeuri b使用的Respnse类
22.8urllib.para e-Parse URLs int cmpnents
229urllib.errr-urllib request引发的异常类
22.10urllib.rbt para er-rb ls.xt语法分析程序
22.11htEp-HTTP模块
2212h0p.Cli ntp协仪客户
22.13ftplibFTP协议客户端.
22.14pplib-PP 3 prtcle lent
22.15imaplib-IMAP4prafculchent.
22.16nntplib-NNTP prt ucl chien t.
2.17m29116SMTP协议客户端
22.18amcpaSMTP服务器.
22.9telnetlib-Tenet clint
220uuid-UUID bjets accrd ig t RFC 4122.
22lacketaerver-Afa mwk fr netwrks es
22.22http.a erverHTTP服务器:
22.23htEp.ccc kies-HTTP状态管理-+++-+
22.24http.ck ae 58HTTP客户端的Ck ic处理
22.25xmlrpc-XMLRPC服务端与客户端模块
22.26xmirpci client-XML-RPC cent access
22.27xmlrpc.a erver-Basic XML-RPC servers,
22.281p addressIPv 4/1Pv 6 manipulatin library
23多媒体服务
23.1audip-Manipula le raw audi dala.
23.2aifeRead and write Al FF and A IF Cf les
23.3sunau一读写Sun AU文件.
23.4wave-读写WAV格式文件
23.5chunk-Read IFF chunked data,
23.6clrsys-颜色系统间的转换.
237img hdr推测图像类型:.+
23.8and hdr一推润声音文件的类型:
23.9saudicdevAccess tas S-ciatbleadideve
24国际化
24.1 gettext一多语种国际
24.21cale一国际化服务,
25程序框架
25.1turtle一海龟绘图:.
25.2ma一支持面向行的命令解释器
25.3shlexSimple lexical analysis.
26Tk图形用户界面(GUI)
26.1 tkinter-Tcl/Tk的Pythn接:.
26.2 tkinter.ttkTk主题小部件
263 tkinter.tix-Exten n wipes fr Tk
26.4tkintr.scrlled text滚动文字控件
26.5IDLE.-.-
26.其他图形用户界面(Gu)包:
27开发工具
27.1 typing一类型标注支持.
272pydc-Dcumenatin generatr and nline help system
273dctest-测试交互性的Pythn示例:
27.4unittest一单元测试框架.
275unicceat.meck-mck对象库
276unitteat.mck上手指南.
2772103-自动将Py hn 2代码转为Pyt n 3代码
27.8teat-Regressin tests pack uge fr Pythn.
27teat.a upprt-U at is fr the Pythn tests uile
28调试和分析
28.1审计事件表.
28.2bdb-Debugger framewrk
fau It handler-Dump the Pythn tace back
28.4pdb-Pythn的调试器,
8.Bihan Pres分析器
28.6t1meit一测量小代码片段的执行时间.
28.7trace-Trace r track Pythn statement executin
28.8tracemallc一跟踪内存分配-.
29软件打包和分发
29.1diatutila—构建和安装Pythn模块:
29.2enaurepip-Btstrapping the pip installer.
29.3venv-创建虚拟环境.
29.4zipapp-Manage executable Pythn zip archies,
30 Pythn运行时服务
30.1sys一系统相关的参数和函数.
main_-层脚本环境,
30.5 warning aWa ming cntrl.
30.6dataclasaes-数据类4.
30.7 cntext lib-U tities fr with-statement cn lex ts
30.8abc-抽象基类
30.9atexit退出处理器
30.10 traceback—打印或检索堆栈回澜.
30.11future__-Future语句定义
30.12gc-垃圾回收器接.
30.13 inspect一检查对象.
30.14s 162Si-spec c cnf gura n lk.
31自定义Pythn解释器
31.1cde-解释器基类.
312cdep一编译Pyi hn代码.
32导人模块
32.121p imprtImprt mdules frm Zip archives.
32.2pkgutilPack agc extensin util ty
32.3 mdule finder一在找脚本使用的模块
32.4runpyLcating and executing Pythn mdules
32.5imprt lib-imprt的实现.
32.6Usingimprthb.metadata.
33 Pythn语言服务
33.1parser-Access Pythn parse trees.
33.2ast一抽象语法树.
333sym table-Ace ess t the cmpiler symbl tables.
33.4 symbl一与Pythn解析树一起使用的常量.
33.5tken一与Pythn解析树一起使用的常量.
33.6 keywrd一检验Pythn关键字.
33.7 tkenizeTkenizer fr Pythn surce.
33.8tabnanny一模糊缩进检测.
33.9pyclbr-Pythn class brwser supprt+-+
33.10py_cmpile-Cmpile Pythn surce files
33.11 cmpile allByte-cmpile Pythn libraries
33.12dis-Pythn字节码反汇编器.“.
33.