Python 标准库简介

标准库简介

操作系统接口

一定要使用 import os 而不是 from os import * 。这将避免内建的 open() 函数被 os.open() 隐式替换掉,它们的使用方式大不相同。

内置的 dir()help() 函数可用作交互式辅助工具,用于处理大型模块

对于日常文件和目录管理任务, shutil 模块提供了更易于使用的更高级别的接口

文件通配符

glob 模块提供了一个在目录中使用通配符搜索创建文件列表的函数:

命令行参数

这些参数作为列表存储在 sys 模块的 argv 属性中

错误输出重定向和程序终止

sys 模块还具有 stdinstdoutstderr 的属性。

字符串模式匹配

re 模块为高级字符串处理提供正则表达式工具。对于复杂的匹配和操作,正则表达式提供简洁,优化的解决方案:

数学

math 模块提供对浮点数学的底层C库函数的访问:

random 模块提供了进行随机选择的工具:

statistics 模块计算数值数据的基本统计属性(均值,中位数,方差等):

互联网访问

有许多模块可用于访问互联网和处理互联网协议。其中两个最简单的 urllib.request 用于从URL检索数据,以及 smtplib 用于发送邮件:

日期和时间

datetime 模块提供了以简单和复杂的方式操作日期和时间的类。虽然支持日期和时间算法,但实现的重点是有效的成员提取以进行输出格式化和操作。该模块还支持可感知时区的对象。

数据压缩

常见的数据存档和压缩格式由模块直接支持,包括:zlib, gzip, bz2, lzma, zipfiletarfile

性能测量

元组封包和拆包功能相比传统的交换参数可能更具吸引力。timeit 模块可以快速演示在运行效率方面一定的优势:

timeit 的精细粒度级别相反, profilepstats 模块提供了用于在较大的代码块中识别时间关键部分的工具。

质量控制

doctest 模块提供了一个工具,用于扫描模块并验证程序文档字符串中嵌入的测试。

unittest 模块不像 doctest 模块那样易于使用,但它允许在一个单独的文件中维护更全面的测试集:

  • xmlrpc.clientxmlrpc.server 模块使远程过程调用实现了几乎无关紧要的任务。尽管有模块名称,但不需要直接了解或处理XML。
  • email 包是一个用于管理电子邮件的库,包括MIME和其他:基于 RFC 2822 的邮件文档。与 smtplibpoplib 实际上发送和接收消息不同,电子邮件包具有完整的工具集,用于构建或解码复杂的消息结构(包括附件)以及实现互联网编码和标头协议。
  •  json 包为解析这种流行的数据交换格式提供了强大的支持。 csv 模块支持以逗号分隔值格式直接读取和写入文件,这些格式通常由数据库和电子表格支持。 XML处理由 xml.etree.ElementTreexml.domxml.sax 包支持。这些模块和软件包共同大大简化了Python应用程序和其他工具之间的数据交换。
  • sqlite3 模块是SQLite数据库库的包装器,提供了一个可以使用稍微非标准的SQL语法更新和访问的持久数据库。
  • 国际化由许多模块支持,包括 gettextlocale ,以及 codecs 包。

 

 

发表评论