字符串格式化

字符串格式化

咱們常常會遇到輸出「親愛的 xx 您好,您 xx 月的話費是xx,餘額是xx!」這樣的字符串,其中xx的內容會根據變量變化的,因此就須要一種簡便的方法來格式化字符串。python

在python中經過%來實現,下面舉幾個小例子:code

>>>"Hello,my name is %s" % "gaoyue"
"Hello,my name is gaoyue"
>>>"Hi,%s,what are you doing!" % "LiMing"
"Hi,LiMing,what are you doing!"

你能夠從上面的小例子看出來%是用來格式化字符串的,%前面字符串中。%s表示的是佔位符,可變。 %後面跟着的是替換到%s位置的變量。orm

那麼常見的佔位符就有:字符串

%d:  整數

%f: 浮點數

%s: 字符串

%x: 十六進制整數

%d 和 %f 還能夠指定位數。例如:form

>>>"%2d-%02d" % (1,2)
" 1-02"
>>>"%.2f" % 3.1415926
"3.14"

%2d----->表示的是佔2個位置的整數。不夠2位用空格來補。變量

%02d---->表示的是佔2個位置的整數。不夠用0來補。數據類型

固然:若是後面的數字比前面規定的大,則直接輸出原本的數字。方法

%.2f---->表示的是浮點數,保留小數點後2位。若是小數點前面也加上數字n,表示保留浮點數總共佔位n個位置,不夠用空格補,小數點後2位。數據

若是你不肯定要格式化的是什麼,那麼就用%s,%s永遠起做用。它會把任何數據類型都轉化成字符串:co

>>>"My name is %s,i am %s years old!" % ("gy",25)
"My name is gy,i am 25 years ole!"

有的時候字符串中須要輸入百分比%。那麼就須要轉義了。 %%表示一個沒有格式化意義的%。

>>>"%d %%" % 12
"12 %"

下面咱們來了解下join和format格式化輸出方法:

join:

"-".join("abcdef")

以 - 爲鏈接符,把字符串"abcdef"中的各個元素拼接起來。這樣的輸出結果就是。

a-b-c-d-e-f

format:

"{0}{1:4}{2:4}{3:4}",format(1,2,3,"a")

{0} 表示format後面跟着的第一個變量。同理後面的1,2,3也是一一對應的。
而{1:4}中的4,是佔位符。表示的是format後面第二個變量,從前一個變臉佔位結束開始佔4位,若是不寫則默認佔位變量的大小。

還有變量默認的排列方式是右對齊。也就是說{1:4}表是的是從1後開是空格3個再輸出3。若是想要居中顯示能夠在佔位數前加上  ^ ,表示後面的變量居中顯示。

"{0:^5}.format(1)"------>  1  ;1居中顯示   左右各2個空格。
相關文章
相關標籤/搜索