python标准库有哪些:按用途分类速查

python标准库有哪些,它是Python安装包自带的模块集合,无需pip额外安装,覆盖文件读写、网络通信、日期处理、正则、多线程等高频开发场景,适合零基础学习者、快速原型开发人员、小型脚本编写人员使用;大型分布式项目重度开发场景下,标准库部分组件性能不足,需要搭配第三方库补充。Python官方文档(Python3.12)将标准库划分为内置函数、数据类型模块、系统交互模块、网络模块、文本处理模块等大类,你可以直接import导入调用。

python标准库:数据与文本处理类

这类模块负责基础数据转换、字符串解析、序列化操作,是日常编码调用频次较高的分组。re模块实现正则表达式匹配,用来提取、替换文本内的指定字符;json模块完成json字符串与Python字典、列表之间的双向转换,处理接口返回文本;datetime模块提供日期、时间对象创建与时间差计算,支持时区基础操作;collections扩展内置容器,提供有序字典、计数器、双端队列等高级数据结构,相比原生列表字典,部分场景读写效率更高。

处理文本编码时优先使用codecs模块,它可以自定义编码解码规则,解决中文、特殊字符读写乱码问题。

python标准库:操作系统与文件操作类

os模块对接操作系统底层接口,实现路径拼接、文件夹创建、权限查看、环境变量读取,跨平台脚本编写优先选择os.path子模块,自动适配Windows、Linux路径分隔符差异。pathlib是Python3.4新增的面向对象路径库,语法可读性优于os.path,适合现代Python项目。shutil模块用于高级文件操作,支持文件复制、移动、文件夹整体打包删除,弥补os模块缺少批量文件操作的短板。glob模块通过通配符批量匹配本地文件,快速获取指定目录下所有后缀相同的文件路径。

python标准库:网络与进程线程类

socket模块是底层网络通信基础,支持TCP、UDP套接字编程,用来搭建简易客户端与服务端;http.client、urllib提供基础http请求能力,可发起get、post请求,解析响应内容,不适合高并发爬虫场景。threading模块用于多线程开发,io密集型任务中可以提升程序运行效率,受GIL全局解释器锁限制,计算密集型任务使用多线程很难提速,这类场景改用multiprocessing多进程模块。subprocess模块调用外部系统命令,启动其他程序并捕获命令输出内容。

python标准库:数学、加密与工具类

math模块封装常用数学函数,三角函数、对数、平方根等计算都可以直接调用,仅支持浮点数运算;需要高精度整数、大数字运算使用内置模块decimal。hashlib提供md5、sha系列哈希算法,用于数据摘要生成,做文件完整性校验;hmac实现带密钥的哈希消息认证。random生成伪随机数,适用于模拟数据、抽奖场景,不适合密码安全场景,密码相关随机数需要使用secrets模块。argparse用于解析命令行参数,给脚本增加命令行传参功能。

模块名称核心用途适用场景局限性
urllib发送基础HTTP请求简单网页抓取不支持会话保持,语法繁琐
threading多线程并发文件IO、接口等待任务CPU密集任务无法并行
random生成伪随机数值模拟测试、随机取样不能用于密码加密场景
datetime日期时间计算日志时间标记,时间差统计原生时区支持能力有限

内置模块不属于独立导入模块,不需要写import,Python启动后直接可用。

内置模块包含builtins,print、len、list这些内置函数都来自builtins,不需要手动导入。sys模块属于标准库,用来获取Python解释器信息,修改模块搜索路径,捕获命令行参数。atexit可以注册程序退出时自动执行的回调函数,用来做资源收尾清理。

标准库模块随Python主版本更新增减,Python3.10之后部分老旧模块被标记为弃用,不建议新项目继续使用。

直接执行importsys,就可以验证标准库模块是否可用,导入无报错代表模块正常。

敬慕百科汇集百科知识与游戏文化,带你发现世界的每一个精彩角落。

想要了解更多关于python标准库有哪些的文章欢迎访问:百科