- 快捷函数
- **TextWrapper**类
textwrap中有5个常用函数,其基本功能如下
>>> from textwrap import * >>> from string import ascii_letters as letters >>> test = letters*3 >>> wrap(test,width=30) ['abcdefghijklmnopqrstuvwxyzABCD', 'EFGHIJKLMNOPQRSTUVWXYZabcdefgh', 'ijklmnopqrstuvwxyzABCDEFGHIJKL', 'MNOPQRSTUVWXYZ'] >>> fill(test,width=30) #注意字符串中多了一些n 'abcdefghijklmnopqrstuvwxyzABCDnEFGHIJKLMNOPQRSTUVWXYZabcdefghnijklmnopqrstuvwxyzABCDEFGHIJKLnMNOPQRSTUVWXYZ' >>> >>> test_i = indent(fill(test,width=30),' ') #在每行前面添加前缀 >>> print(test_i) #每行前多了个空格 abcdefghijklmnopqrstuvwxyzABCD EFGHIJKLMNOPQRSTUVWXYZabcdefgh ijklmnopqrstuvwxyzABCDEFGHIJKL MNOPQRSTUVWXYZ >>> dedent(test_i) #删除每行前的空格前缀 'abcdefghijklmnopqrstuvwxyzABCDnEFGHIJKLMNOPQRSTUVWXYZabcdefghnijklmnopqrstuvwxyzABCDEFGHIJKLnMNOPQRSTUVWXYZ' >>> shorten(test_i,width=50) #按照给定长度和空格等进行字符串截取,对于被截取部分,用[...]表示 'abcdefghijklmnopqrstuvwxyzABCD [...]'TextWrapper类
快捷函数中其实有很多可选参数,例如wrap:
textwrap.wrap(text, width=70, *, initial_indent='', subsequent_indent='', expand_tabs=True, replace_whitespace=True, fix_sentence_endings=False, break_long_words=True, drop_whitespace=True, break_on_hyphens=True, tabsize=8, max_lines=None)
查看源代码可以发现,快捷函数wrap在实现过程中,新建了一个TextWrapper类的实例,然后调用了这个实例中的wrap函数。
def wrap(text, width=70, **kwargs): w = TextWrapper(width=width, **kwargs) return w.wrap(text)
若想深入理解这些快捷函数,就需要理解TextWrapper中成员变量的含义
句子检测方法:结尾是小写字母加字符.?中的一个,并可能带有单双引号。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)