python編程開發(fā)之textwrap文本樣式處理技巧
本文實(shí)例講述了python編程開發(fā)之textwrap文本樣式處理技巧。分享給大家供大家參考,具體如下:
在看python的API的時(shí)候,發(fā)現(xiàn)python的textwrap在處理字符串樣式的時(shí)候功能強(qiáng)大
在這里我做了一個(gè)demo:
textwrap提供了一些方法:
wrap(text, width = 70, **kwargs):這個(gè)函數(shù)可以把一個(gè)字符串拆分成一個(gè)序列
from textwrap import * #使用textwrap中的wrap()方法 def test_wrap(): test_str = '''\ The textwrap module provides two convenience functions, wrap() and fill(), as well as 1 TextWrapper, the class that does all the work, and two utility functions, dedent() and indent(). If 2 you're just wrapping or filling one or two text strings, the convenience functions should be good 3 enough; otherwise, you should use an instance of TextWrapper for efficiency. 4 ''' print(wrap(test_str, 20)) def main(): test_wrap() if __name__ == '__main__': main()
輸出效果:
Python 3.3.2 (v3.3.2:d047928ae3f6, May 16 2013, 00:03:43) [MSC v.1600 32 bit (Intel)] on win32 Type "copyright", "credits" or "license()" for more information. >>> ================================ RESTART ================================ >>> [' The textwrap', 'module provides two', 'convenience', 'functions, wrap()', 'and fill(), as well', 'as 1', 'TextWrapper, the', 'class that does all', 'the work, and two', 'utility functions,', 'dedent() and', 'indent(). If 2', 'you're just wrapping', 'or filling one or', 'two text strings,', 'the convenience', 'functions should be', 'good 3 enough;', 'otherwise, you', 'should use an', 'instance of', 'TextWrapper for', 'efficiency. 4'] >>>
我們會(huì)發(fā)現(xiàn),wrap()函數(shù),把字符串拆分成了一個(gè)序列,在這個(gè)序列中,每個(gè)元素的長度是一樣的。
fill(text, width=70, **kwargs) :該方法可以根據(jù)指定的長度,進(jìn)行拆分字符串,然后逐行顯示
from textwrap import * #fill()方法 def test_wrap(): test_str = '''\ The textwrap module provides two convenience functions, wrap() and fill(), as well as 1 TextWrapper, the class that does all the work, and two utility functions, dedent() and indent(). If 2 you're just wrapping or filling one or two text strings, the convenience functions should be good 3 enough; otherwise, you should use an instance of TextWrapper for efficiency. 4 ''' print(fill(test_str, 40)) def main(): test_wrap() if __name__ == '__main__': main()
運(yùn)行效果:
Python 3.3.2 (v3.3.2:d047928ae3f6, May 16 2013, 00:03:43) [MSC v.1600 32 bit (Intel)] on win32 Type "copyright", "credits" or "license()" for more information. >>> ================================ RESTART ================================ >>> The textwrap module provides two convenience functions, wrap() and fill(), as well as 1 TextWrapper, the class that does all the work, and two utility functions, dedent() and indent(). If 2 you're just wrapping or filling one or two text strings, the convenience functions should be good 3 enough; otherwise, you should use an instance of TextWrapper for efficiency. >>>
dedent()方法->文本進(jìn)行不縮進(jìn)顯示,相應(yīng)的indent()方法 -> 進(jìn)行縮進(jìn)顯示
from textwrap import * #dedent()方法 def test_wrap(): test_str = '''\ The textwrap module provides two convenience functions, wrap() and fill(), as well as 1 TextWrapper, the class that does all the work, and two utility functions, dedent() and indent(). If 2 you're just wrapping or filling one or two text strings, the convenience functions should be good 3 enough; otherwise, you should use an instance of TextWrapper for efficiency. 4 ''' print(repr(dedent(test_str))) def main(): test_wrap() if __name__ == '__main__': main()
運(yùn)行效果:
Python 3.3.2 (v3.3.2:d047928ae3f6, May 16 2013, 00:03:43) [MSC v.1600 32 bit (Intel)] on win32 Type "copyright", "credits" or "license()" for more information. >>> ================================ RESTART ================================ >>> 'The textwrap module provides two convenience\n functions, wrap() and fill(), as well as 1\nTextWrapper, the class that does all the work,\n and two utility functions, dedent() and indent(). If 2\nyou're just wrapping or filling one or two text strings,\n the convenience functions should be good 3\nenough; otherwise, you should use an instance\n of TextWrapper for efficiency. 4\n' >>>
希望本文所述對大家Python程序設(shè)計(jì)有所幫助。
相關(guān)文章
Python 裝飾器@,對函數(shù)進(jìn)行功能擴(kuò)展操作示例【開閉原則】
這篇文章主要介紹了Python 裝飾器@,對函數(shù)進(jìn)行功能擴(kuò)展操作,結(jié)合實(shí)例形式分析了裝飾器的相關(guān)使用技巧,以及開閉原則下的函數(shù)功能擴(kuò)展,需要的朋友可以參考下2019-10-10如何用python將文件夾內(nèi)多個(gè)excel表格合并成總表
前幾天遇見這么一個(gè)問題,手上有很多張表格,這些表格中都只有一個(gè)sheet,需要把這些表匯總到一張表,下面這篇文章主要給大家介紹了關(guān)于如何用python將文件夾內(nèi)多個(gè)excel表格合并成總表的相關(guān)資料,需要的朋友可以參考下2023-06-06python實(shí)現(xiàn)數(shù)字炸彈游戲
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)數(shù)字炸彈游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-07-07將本地Python項(xiàng)目打包成docker鏡像上傳到服務(wù)器并在docker中運(yùn)行
Docker是一個(gè)開源項(xiàng)目,為開發(fā)人員和系統(tǒng)管理員提供了一個(gè)開放平臺(tái),可以將應(yīng)用程序構(gòu)建、打包為一個(gè)輕量級容器,并在任何地方運(yùn)行,這篇文章主要給大家介紹了關(guān)于將本地Python項(xiàng)目打包成docker鏡像上傳到服務(wù)器并在docker中運(yùn)行的相關(guān)資料,需要的朋友可以參考下2023-12-12Python自動(dòng)化之UnitTest框架實(shí)戰(zhàn)記錄
這篇文章主要給大家介紹了關(guān)于Python自動(dòng)化之UnitTest框架實(shí)戰(zhàn)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09