官术网_书友最值得收藏!

2.7.1 拼接和格式化

字符串最常見的操作之一就是拼接。對于簡單的拼接,我們可以用“+”操作符很容易地做到。


>>> name = 'world'
>>> greeting = 'Hello ' + name
>>> print(greeting)
Hello world

復雜一些的情況,我們還是可以通過“+”操作符來進行。


>>> pick_2002 = 'Yao Ming'
>>> pick_2003 = 'LeBron James'
>>> nba_draft_picks = 'First draft pick of NBA 2002 is ' + pick_2002 + ', and 
    the first draft pick of NBA 2003 is ' + pick_2003
>>> print(nba_draft_picks)
First draft pick of NBA 2002 is Yao Ming, and the first draft pick of NBA 2003 
    is LeBron James

更復雜一些的情況,我們仍然可以通過“+”操作符來完成,但是,這需要做大量碎片化的細節處理,很容易出錯,也不容易看出拼接字符串的最終全貌,這會帶來編碼、閱讀和維護方面的困難,我們需要更合適的方式來完成這類任務。

針對這種情況,我們可以用字符串的format方法。


>>> pick_2002 = 'Yao Ming'
>>> pick_2003 = 'LeBron James'
>>> 'First draft pick of 2002 is {}, and the first draft pick of 2003 is {}'.
    format(pick_2002, pick_2003)
'First draft pick of 2002 is Yao Ming, and the first draft pick of 2003 is 
    LeBron James'

可以給括號占位符加上序號,進一步減少出錯的可能。


>>> pick_2002 = 'Yao Ming'
>>> pick_2003 = 'LeBron James'
>>> 'First draft pick of 2002 is {0}, and the first draft pick of 2003 is {1}'.
    format(pick_2002, pick_2003)
'First draft pick of 2002 is Yao Ming, and the first draft pick of 2003 is 
    LeBron James'

甚至可以給占位符加上名字,這樣,可讀性和可維護性會進一步提高。


>>> pick_2002 = 'Yao Ming'
>>> pick_2003 = 'LeBron James'
>>> 'First draft pick of 2002 is {pick_2002_name}, and the first draft pick of 
    2003 is {pick_2003_name}'.format(pick_2002_name=pick_2002, pick_2003_
    name=pick_2003)
'First draft pick of 2002 is Yao Ming, and the first draft pick of 2003 is 
    LeBron James'

通過占位符,format方法可以很靈活地處理字符串的格式化,同時還可以使代碼具有很高的可讀性和可維護性。

主站蜘蛛池模板: 嘉义县| 辽宁省| 郧西县| 江孜县| 金湖县| 邻水| 宽甸| 林西县| 双江| 莱西市| 津南区| 萝北县| 沈丘县| 江津市| 青田县| 湟源县| 安丘市| 达尔| 扶沟县| 庆城县| 清丰县| 通榆县| 山西省| 泸州市| 兴文县| 克东县| 秀山| 新建县| 建水县| 潞城市| 平舆县| 伊宁市| 六安市| 沈丘县| 安宁市| 西峡县| 韶山市| 萍乡市| 明水县| 方山县| 手游|