1. 程式人生 > >Python 3 格式化字串的幾種方法

Python 3 格式化字串的幾種方法

%s和%d,%s是用來給字串佔位置,%d是給數字佔位置,簡單解釋下:

a = 'this is %s %s' % ('an','apple')

程式輸出的結果就是:this is an apple。很容易理解,第一個%s的值是用後面括號中第一個字串替換的,第二個%s的值是後面括號中第二個字串替換的,位置很重要。如果是這樣:

a = 'this is %s %s' % ('apple','an')

程式輸出的結果就是:this is apple an。程式會嚴格按照位置來替換。

format方法:

a = 'this is {} {}'.format('apple','an'
)

程式輸出結果是:this is apple an。format方法相當於是用{}來佔位置的(類似%S的佔位置)。但是我們可以給他提供引數,比如這種:

a = 'this is {1} {0}'.format('apple','an')

程式輸出結果是:this is an apple。可以看出來,我們後面括號中的引數的位置並沒有改變,但是輸出結果卻變了。那是因為我在{}中指定了引數,{1}表示括號中索引為1的字串,也就是第二個字串(Python的索引是從0開始的)

format還可以這麼用:

a = 'this is {number} {fruit}'.format(number
='an',fruit='apple')

我們可以用類似鍵值對的方法來指定他們對應的值,前面{namber}對應了後面括號中的‘an’,因為我們後面括號中寫的很清楚number=’an’。這種方法就可以不用記住引數的位置,只要對用好引數的“鍵”和“值”就行了