Textwrap模块

该模块首先提供了三个便捷的方法:wrap,fill和decent,也提供了TextWrapper类

textwrap.wrap(text,[width[,…]])

  这个方法是将一个字符串按照width的宽度进行切割,切割后返回list

import textwrap
sample_text = '''aaabbbcccdddeeeedddddfffffggggghhhhhhkkkkkkk'''
sample_text2 = '''aaa bbb ccc ddd eeee ddddd fffff ggggg hhhhhh kkkkkkk'''

print sample_text
print textwrap.wrap(sample_text,width=5)
print textwrap.wrap(sample_text2,width=5)

下面是执行结果

aaabbbcccdddeeeedddddfffffggggghhhhhhkkkkkkk
['aaabb', 'bcccd', 'ddeee', 'edddd', 'dffff', 'fgggg', 'ghhhh', 'hhkkk', 'kkkk']
['aaa', 'bbb', 'ccc', 'ddd', 'eeee', 'ddddd', 'fffff', 'ggggg', 'hhhhh', 'h kkk', 'kkkk']

看第三个打印的结果,并不是保证了每个list元素都是按照width的,因为不但要考虑到width,也要考虑到空格,也就是一个单词。

textwrap.fill(text[, width[, …]])
  这个方法是将一个字符串按照width的宽度进行切割,切割后返回字符串

sample_text = '''aaabbbcccdddeeeedddddfffffggggghhhhhhkkkkkkk'''
sample_text2 = '''aaa bbb ccc ddd eeee ddddd fffff ggggg hhhhhh kkkkkkk'''

print sample_text
print textwrap.fill(sample_text,width=5)
print textwrap.fill(sample_text2,width=5)

这是返回结果

aaabbbcccdddeeeedddddfffffggggghhhhhhkkkkkkk
aaabb
bcccd
ddeee
edddd
dffff
fgggg
ghhhh
hhkkk
kkkk
aaa
bbb
ccc
ddd
eeee
ddddd
fffff
ggggg
hhhhh
h kkk
kkkk
View Code

textwrap.dedent(text)
  这个方法是用来移除行首和行尾的空白符

sample_text = '''
    aaabbb
                cccdddee    eedddddfffffggggghhhhhhkkkkkkk'''
print sample_text
print textwrap.dedent(sample_text)

 参考原文博客https://blog.csdn.net/zwbzwbzwbzwbzwbzwb/article/details/52824154

 

猜你喜欢

转载自www.cnblogs.com/Mr-l/p/10663011.html