Python學習總結6 字串格式化操作及方法總結

2022-08-26 05:48:07 字數 2119 閱讀 5202

1. 格式化操作(%)

python中內建有對字串進行格式化的操作。

模板

格式化字串時,python使用乙個字串作為模板。模板中有格式符,這些格式符為真實值預留位置,並說明真實數值應該呈現的格式。

python用乙個tuple將多個值傳遞給模板,每個值對應乙個格式符。

a = "

i'm %s. i'm %d year old

" % ('

vamei

', 99)

print(a)

上面的例子中,"i'm %s. i'm %d year old" 為模板。%s為第乙個格式符,表示乙個字串。%d為第二個格式符,表示乙個整數。('vamei', 99)的兩個元素'vamei'和99為替換%s和%d的真實值。 在模板和tuple之間,有乙個%號分隔,它代表了格式化操作。整個"i'm %s. i'm %d year old" % ('vamei', 99) 實際上構成乙個字串表示式。我們可以像乙個正常的字串那樣,將它賦值給變數a。

另外,還可以用字典來傳遞真實值

print("

i'm %(name)s. i'm %(age)d year old

" % )

可以看到,我們對兩個格式符進行了命名。命名使用()括起來。每個命名對應詞典的乙個key。

格式符

格式符為真實值預留位置,並控制顯示的格式。格式符可以包含有乙個型別碼,用以控制顯示的型別,如下:

%s    字串 (採用str()的顯示)

%r    字串 (採用repr()的顯示)

%c    單個字元

%b    二進位制整數

%d    十進位制整數

%i     十進位制整數

%o    八進位制整數

%x    十六進製制整數

%e    指數 (基底寫為e)

%e    指數 (基底寫為e)

%f    浮點數

%f    浮點數,與上相同

%g    指數(e)或浮點數 (根據顯示長度)

%g    指數(e)或浮點數 (根據顯示長度)

%%    字元"%"

可以用如下的方式,對格式進行進一步的控制:

%[(name)][flags][width].[precision]typecode

name: 為命名

flags:可以有+,-,' '或0。+表示右對齊。-表示左對齊。' '為乙個空格,表示在正數的左側填充乙個空格,從而與負數對齊。0表示使用0填充。

width:表示顯示寬度

precision:表示小數點後精度

print("

%+10x

" % 10)

print("

%04d

" % 5)

print("

%6.3f

" % 2.3)

2. 格式化方法

str1.zfill(width)

引數width -- 指定字串的長度。原字串右對齊,前面填充0,返回指定長度的字串。

>>> '12'.zfill(5)

'00012』

>>> '-3.14'.zfill(7)

'-003.14'

>>> '3.14159265359'.zfill(5)

'3.14159265359'

str1.rjust(width) 向右對其,在左邊補空格

str1.ljust(width) 向左對其,在右邊補空格

str1.center(width) 讓字串居中,在左右補空格

s1 = "

123".rjust(5)

s2 = "

123".ljust(5)

s3 = "

123".center(5)

總結:python中內建的%操作符可用於格式化字串操作,控制字串的呈現格式。python中還有其他的格式化字串的方式,但%操作符的使用是最方便的。

python基礎學習6 字串操作

一.重複輸出字串 print hello 20 輸出20個hello 二.通過索引獲取字串中字元 print helloworld 2 輸出lloworld 三.關鍵字 in print ll in hello 輸出true 四.格式化輸出 print darling,i love you prin...

6 字串函式

strcpy函式char strcpy char dest,const char src 功能 把src所指向的字串覆蓋複製到dest。返回值 dest指向的字串。注意 字串src的長度不能超過dest,否則會溢位。strncpy函式char strncpy char dest,const char...

6 字串拼接

字串相加 alert hello world hello world 數值字串相加 alert 100 100 100100 數值字串 數值 alert 11 12 1112口訣 數值相加,字元相連 var age 18 console.log pink老師age歲啦 這樣不行 console.lo...