在說format函數之前先說一下關於python中格式化字串的方法,通常情況下是使用 %(百分比符號) 的形式對字串進行格式化,而這種方式和C語言中的格式化字串的方式相似
1.通過%(方式:%字串格式控制符)對字串格式化,在ipython中進行操作
常見的字串格式控制有:
%c字元及其ASCII碼
%s字串
%d有符號整數(十進位)
%u不帶正負號的整數(十進位)
%o不帶正負號的整數(八進位)
%x不帶正負號的整數(十六進位)
%X不帶正負號的整數(十六進位大寫字元)
%e浮點數字(科學計數法)
%E浮點數字(科學計數法,用E代替e)
%f浮點數字(用小數點符號)
%g浮點數字(根據值的大小採用%e或%f)
%G浮點數字(類似於%g)
%p指標(用十六進位列印值的記憶體位址)
%n儲存輸出字元的數量放進參數列表的下一個變數中
2.%也還可以通過具名引數的方式對字串格式化,這個方式和後面即將講到的format方式有點類似
3.從python2.6開始python支援使用str.format()這個函數對字串進行格式化操作,通過下面的執行個體對format函數進行一個瞭解
3.1通過位置參數
在這裡需要留一點就是第二個,位置參數全部留空,當全部為空白的時候,他自動按照順序進行匹配
字串的format函數可以接受不限個參數(這個參數可以是單個字串也可以是序列),位置可以不按順序,可以不用或者用多次(比如上面的第三個),不過在2.6中是不可以為空白的但是在2.7及其以上包括3.x的都支援可以為空白(比如上面樣本中的第二個)
3.2通過關鍵字參數
3.3通過映射 list
3.4通過映射 dict
4.通過格式限定符,基本的文法是{}中帶:號
4.1填充與對齊:
^,>,<分別表示置中,靠右對齊,靠左對齊,後面跟上寬度,:號後面帶有的填充的字元,只能是一個字元,如果沒有指定則預設填充的是空格看樣本:
{:>8}表示靠右對齊八位,但是這裡面在:號的後面並沒有指定填充的字元,所以預設情況下使用空格進行填充,與下面的樣本行程對比
這些就是format函數的一些常用用法