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

3.4 字符串格式化進(jìn)階——format

Python的字符串格式化主要有兩種方式:%格式符方式和format方式。在3.3節(jié)中已經(jīng)介紹了%格式符方式,那么在本節(jié)中將主要學(xué)習(xí)format()方法,通過一些實例來加深讀者對format()方法的了解。

3.4.1 format()方法

從Python 2.6開始,新增了一個格式化字符串的函數(shù)format(),它增強(qiáng)了字符串格式化的功能。

相對于前面學(xué)到的基礎(chǔ)的格式化方法,此方法通過{}和:來代替?zhèn)鹘y(tǒng)%格式化方式。format()既能夠用于簡單的場景,也能夠勝任復(fù)雜的字符串替換,而無需煩瑣的字符串連接操作。Python的內(nèi)置類型str和unicode均支持使用format()來格式化字符串。

接下來就詳細(xì)地討論format()的具體用法。

其格式化方法格式如下:

其參數(shù)含義如下。

  •  fill:可選項,用于填充空白處的字符。
  •  align:選項,定義對齊的方式。通常和參數(shù)width一起使用,其方式定義如下。
    • ◆ <:采用左對齊方式。
    • ◆ >:采用右對齊方式,此方式為默認(rèn)采用的方式。
    • ◆ =:采用右對齊,且將符號位放在填充字符的左側(cè),只對數(shù)字類型有效。
    • ◆ ^:進(jìn)行居中對齊。
  •  sign:可選項,決定數(shù)字符號相關(guān)。
    • ◆ +:正號表示正數(shù)加正號,負(fù)數(shù)加負(fù)號。
    • ◆ -:正數(shù)符號不變,負(fù)數(shù)加上負(fù)號,此方式為默認(rèn)采用的方式。
    • ◆ 空格:正數(shù)加空格,負(fù)數(shù)加負(fù)號。
  •  #:可選項,顯示進(jìn)制,如果對二進(jìn)制、八進(jìn)制、十六進(jìn)制加上#,會顯示0b/0o/0x,否則不顯示。
  •  ,:可選項,用于給數(shù)字添加數(shù)學(xué)分隔符,例如40,000。
  •  width:可選項,格式化占有寬度。
  •  .precision:可選項,指定小數(shù)點(diǎn)要保留的精度。
  •  type:可選項,格式化類型符號。

3.4.2 format()方法的實例

format()函數(shù)采用{}和:進(jìn)行格式化,實例如下。

【例3-28】填充和格式化。

【例3-29】精度與進(jìn)制。

format()允許參數(shù)位置可以自由化,通過相應(yīng)的參數(shù)值來進(jìn)行對應(yīng),實例如下。

【例3-30】位置對應(yīng)。

主站蜘蛛池模板: 宣恩县| 延庆县| 二连浩特市| 黑龙江省| 祁东县| 伊吾县| 东港市| 肥东县| 利津县| 当涂县| 高唐县| 舞钢市| 甘南县| 靖远县| 清徐县| 且末县| 邛崃市| 苏州市| 乾安县| 呼伦贝尔市| 东乌| 宁河县| 岳池县| 霍州市| 兴文县| 塔城市| 麻城市| 涞水县| 颍上县| 白玉县| 雅江县| 柯坪县| 江源县| 玉山县| 潼南县| 祁连县| 寿阳县| 武强县| 阿荣旗| 明光市| 长岭县|