文本 Text
对于Python程序员来说,用于文本处理最易见的就是str
类,但是在标准库中,还又其他很多工具,可以将复杂的文本操作简单化。
程序中可以使用string.Template
,这是一种简单的字符串参数化方法,并提供比str
对象更多的特性。虽然它不像许多来自Python Package Index中的Web框架或是扩展模块的模板那样,提供及其丰富的特性,但对于用户可更改字符串模板,即要将动态内容插入到静态文本的场景,string.Template
是一个很好的中间层。
textwrap
模块包括用于段落文本格式化的工具,其提供的功能包括限制输出的宽度、增加缩进、对多行内容添加换行符。
标准库中提供两个用于比较文本内容的模块,其功能比string对象支持的内置相等比较和排序比较更强大。re
提供完整的正则表达式的库,其使用C实现以提高速度。正则表达式非常适合于在更大的数据集中查找字符子串、比固定字符串比较更复杂的字符串比较、以及柔和解析。
difflib
库可以计算不同文本之间的区别,对比形式包括增加、删除、更改。difflib
库中的比较函数的输出,可用于向用户提供更详细的反馈信息,包括两个输入中发生的修改、一个文档如何随着时间改变,等等。