Python Base 字串格式化輸出

2021-10-02 04:35:56 字數 3489 閱讀 6621

summary =

''' python用乙個tuple(其實可以不寫tuple括號也可以)將多個值傳遞給模板,每個值對應乙個格式符.

'''example =

''' e.g :

依次傳值

"i'm %s. i'm %d year old" % ('hom', 30)

詞典傳值

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

'''

#基本格式符

layout =

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

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

%c 單個字元(chr()函式轉換)

%b 二進位制整數(只能用於字串format方法和format函式,%不能用.)

%d和%i 十進位制整數(帶符號)

%u 十進位制整數(不帶符號)

%o 八進位制整數

%x和%x 十六進製制整數, 區別在於輸出時大小寫.

%e和%e 指數 (基底寫為e或e)

%f和%f 浮點數

%g和%g 指數(e/e)或浮點數 (根據顯示長度), 即%e和%f自動判斷

%% 輸出字元%

要是想輸出%則要使用%%進行轉義操作.

'''#加強符

exactly =

'''(name): 命名,用於字典控制賦值

加強符: 正號+, 負號-, 空格 , 零0, 井號#

正號+ :表示正號或右對齊。01 數值顯示正號; 02 數值或字串從右向左 補齊輸出長度 ,不足時 左側補空格.

負號- :表示右對齊。01 數值或字串從左向右 補齊輸出長度 ,不足時 右側補空格。

空格 :表示在正數的左側填充乙個空格,負數則不填充, 從而使得負數和正數對齊; 對字串無效。

零0 :表示使用0填充"左側"多餘空格部分。僅對數值起效, 不能和-一起用.

井號# :對於八進位制和十六進製制, 前面顯示0或0x或0x

'''#控制符

controller =

'''width: 顯示寬度,總長度,會補齊空格. 該部分可以設為*, 此時長度由後面的元組中指定.

.precision: 對於數值, 表示小數點後精度; 對於數值轉字串, 表示字串有效長度(包括.+-符號). 該部分可以設為*, 此時長度由後面的元組中指定.

一般使用*號代替

'''

# 正號 - 數值

a0 =

"=%d="%10

a1 =

"=%+d="%10

a2 =

"=%+5d="%10

a3 =

"=%+05d="%10

a4 =

"=%05d="%10

print

(a0)

print

(a1)

print

(a2)

print

(a3)

print

(a4)

<<

《輸出》

>=10

==+10

==+10

==00010

=# 正號 - 補齊

b ="six"

b0 =

"=%s="

% bb1 =

"=%10s="

% bb2 =

"=%+10s="

% bprint

(b0)

print

(b1)

print

(b2)

<<

《輸出》

>

=six=

= six=

= six=

# 負號 - 數值

a0 =

"=%d="%10

a1 =

"=%-d="%10

a2 =

"=%-5d="%10

a3 =

"=%-05d="%10

print

(a0)

print

(a1)

print

(a2)

print

(a3)

<<

《輸出》

>=10

==10=

=10==

10=# 負號 - 補齊

b ="six"

b0 =

"=%s="

% bb1 =

"=%-10s="

% bprint

(b0)

print

(b1)

<<

《輸出》

>

=six=

=six =

c0 =

"%d to hex is %x"%(

100,

100)

c1 =

"%d to hex is %#x"%(

100,

100)

print

(c0)

print

(c1)

<<

《輸出》

>

100 to hex

is64

100 to hex

is0x64

d0 =

"=% d="%5

d1 =

"=% d="%-

5d2 =

"=% d="%-

5print

(d0)

print

(d1)

print

(d2)

<<

《輸出》

>=5

==-5

==-5

=

點號: 左側指定輸出長度, 右側指定擷取長度; 先擷取再輸出; 對數值 和 字串 生效

e =

"string"

e0 =

"=%5s="

% e # 指定輸出長度

e1 =

"=%.3s="

% e # 擷取長度

e2 =

"=%5.3s="

% e # 擷取指定長度3,輸出為指定長度5

e5 =

"=%*.*s="%(

5,3,

56.123456789

)# e2 的動態寫法

print

(e0)

print

(e1)

print

(e2)

print

(e5)

<<

《輸出》

>

=string=

=str==

str=

=string==56

.=

格式字串

格式字串 生產格式化字串的每個方法都需要格式字串和引數列表。格式字串是乙個string,它可以包含固定文字以及乙個或多個格式說明符。string.format string format,object args 格式說明符的語法 常規型別 字串和數值型的格式說明符的語法 argument index...

轉換字串格式

轉換字串格式為原來字串裡的字元 該字元連續出現的個數,例如字串 1233422222 轉換為1121324125 1出現1次,2出現1次,3出現2次,4出現1次,2出現5次 解法 可通過sprintf語句,位於標頭檔案中。與printf在用法上幾乎一樣,只是列印的目的地不同而已,前者列印到字串中,後...

pythonformat格式字串

語法 它通過 和 來代替 注意 字串的format函式可以接受無限個引數,位置可以不按順序,可以不用或者用多次,不過2.6不能為空 2.7才可以。通過位置 in 1 format kzc 18 out 1 kzc,18 in 2 format kzc 18 out 2 kzc,18 in 3 for...