zoukankan      html  css  js  c++  java
  • python模块学习 textwrap 文本包装和填充

    python模块学习- textwrap 文本包装和填充
    代码实例:
    sample_text = '''
    The textwrap module can beused to format text for output in
    situations wherepretty-printing is desired. It offers
    programmatic functionalitysimilar to the paragraph wrapping
    or filling features found inmany text editors.
    '''
    段落填充:
    import textwrap
    from textwrap_exampleimport sample_text

    print 'Nodedent:\n'
    printtextwrap.fill(sample_text, width=50)
    执行结果:
    # pythontextwrap_fill.py
    No dedent:

    The textwrap module can be used to format
    text for outputin situations where pretty-
    printing is desired. It offers programmatic
    functionalitysimilar to the paragraph wrapping
    or fillingfeatures found in many text editors.
    结果为左对齐,第一行有缩进。行中的空格继续保留。
    移除缩进:
    import textwrap
    fromtextwrap_example import sample_text

    dedented_text = textwrap.dedent(sample_text)
    print 'Dedented:'
    printdedented_text
    执行结果:
    # pythontextwrap_dedent.py
    Dedented:

    The textwrapmodule can be used to format text for output in
    situations wherepretty-printing is desired. It offers
    programmaticfunctionality similar to the paragraph wrapping
    or fillingfeatures found in many text editors.
    这样第一行就不会缩进。
    结合移除缩进和填充:
    import textwrap
    fromtextwrap_example import sample_text

    dedented_text =textwrap.dedent(sample_text).strip()
    for width in [ 45,70 ]:
    print '%d Columns:\n' % width
    print textwrap.fill(dedented_text,width=width)
    print
    执行结果:
    # pythontextwrap_fill_width.py
    45 Columns:

    The textwrapmodule can be used to format
    text for output insituations where pretty-
    printing isdesired. It offers programmatic
    functionalitysimilar to the paragraph
    wrapping orfilling features found in many
    text editors.

    70 Columns:

    The textwrapmodule can be used to format text for output in
    situations wherepretty-printing is desired. It offersprogrammatic
    functionality similarto the paragraph wrapping or filling features
    found in many texteditors.
    悬挂缩进:悬挂缩进第一行的缩进小于其他行的缩进。
    import textwrap
    fromtextwrap_example import sample_text

    dedented_text =textwrap.dedent(sample_text).strip()
    printtextwrap.fill(dedented_text,
    initial_indent='',
    subsequent_indent=' ' * 4,
    width=50,
    )
    执行结果:
    # pythontextwrap_hanging_indent.py
    The textwrapmodule can be used to format text for
    output in situations where pretty-printingis
    desired. It offers programmatic functionality
    similar to the paragraph wrapping orfilling
    features found in many text editors.
    其中的’’*4还可以使用其他字符代替。

    TextWrap提供函数wrap()和fill(), 以及TextWrapper类,工具函数dedent(). 通常包装或者填充一两个字符串使用wrap()和fill()。其他情况使用TextWrapper更高效。

    textwrap.wrap(text[,width[, ...]])
    包装单个段落(text为输入,系字符串),每行最长宽度width。返回输出行的列表,最后行无换行符。Width默认70。

    textwrap.fill(text[,width[, ...]])
    包装单段文字,并返回包含包裹段落的字符串。实际上是"\n".join(wrap(text,...))的缩写。wrap() and fill()创建TextWrapper实例,并调用一个方法。这些实例不被重用,所以包装/填充很多文本字符串要构造自己的TextWrapper对象更有效。TextWrapper.break_long_words设置是否拆长单词。
    textwrap.dedent(text)
    反缩进去除每行行首的空白。这方便显示三引号中的内容而不修改其源代码中的缩进。
    ?

  • 相关阅读:
    C++头文件编译问题
    Windows下Critical Section、Event、Mutex、Semaphores区别
    MFC OnCtlColor函数用来改变控件颜色
    Ctreectrl +CImageList应用
    20091113 08:37 实现文件读写操作的几种方法
    在网上看到这篇文章还不错,OnDrawItem与DrawItem讨论
    Mysql全文搜索match…against的用法
    Django and fulltext search
    Feed DB 搜博客 一个博客搜索引擎
    通过扩展Django数据库API支持全文搜索
  • 原文地址:https://www.cnblogs.com/blueel/p/3081418.html
Copyright © 2011-2022 走看看