python的format方法使用詳解

2021-08-29 03:20:14 字數 2997 閱讀 9383

從python2.6開始,新增了一種格式化字串的函式str.format(),它增強了字串格式化的功能。

基本語法是通過{}:來代替以前的%

format方法可以接受無限個引數,位置可以不按順序。

不指定format方法的關鍵字引數

>>

>

"{} {}"

.format

('hello'

,'world'

)# 不設定指定位置,按預設順序

'hello world'

>>

>

" ".

format

("hello"

,"world"

)# 設定指定位置

'hello world'

>>

>

" "

.format

("hello"

,"world"

)# 設定指定位置

'world hello world'

指定format方法的關鍵字引數

>>

>

print

("name: , age: "

.format

(name=

'bob'

, age=22)

)name: bob, age:

22

通過字典設定引數

employee =

print

("name: , age: "

.format

(**employee)

)

輸出為:

name: bob, age: 22

通過列表索引設定引數

employee =

['bob',22

]print

("name: , age: "

.format

(employee)

)

輸出為:

name: bob, age: 22

通過物件設定引數

class

employee

(object):

def__init__

(self, name, age)

: self.name = name

self.age = age

employee = employee(

'bob'

,'22'

)print

("name: , age: "

.format

(employee)

)

輸出為:

name: bob, age: 22

數字格式

輸出描述

3.1415926

3.14

保留小數點後兩位

3.1415926

+3.14

帶符號保留小數點後兩位

-1-1.00

帶符號保留小數點後兩位

2.71828

3不帶小數505

寬度為2,填充字元為0,填充左邊

55***

寬度為4,填充字元為x,填充右邊

1010xx

寬度為4,填充字元為x,填充右邊

1000000

1,000,000

以逗號分隔的數字格式

0.25

25.00%

百分比格式

1000000000

1.00e+09

指數記法

1328723840

1.329e+09

指數記法

13******xx13

右對齊(預設對齊方式)(寬度為10,填充字元為x)

1313

左對齊,寬度為10,預設填充字元為空格

13***x13***x

中間對齊,寬度為10,填充字元為x

255255.000000

轉為浮點數,預設保留小數點後6位

25511111111

轉為二進位制

255377

轉為八進位制,寬度為10,填充字元為空格

255ff

轉為十六進製制

2550xff

轉為十六進製制

2550xff

轉為十六進製制

0b11111111

255轉為十進位制

熟悉了數字的格式化輸出,那麼字串的格式化輸出就比較簡單了,兩者沒有太多區別,只需要用s標記替換fdoxb標記即可

>>

> name =

'bob'

>>

>

# 寬度為10,左對齊,填充字元為預設的填充字元空格

>>

>"".

format

(name)

'bob '

>>

>

# 寬度為10,右對齊,填充字元為x

>>

>"".

format

(name)

'******xbob'

>>

>

# 寬度為10,中間對齊,填充字元為x

>>

>"".

format

(name)

'***bob***x'

python中format 方法的使用

在python3中,字串格式化操作通過format 方法,format 方法擁有更多的功能,操作起來更加方便。該函式將字串當成乙個模板,通過傳入的引數進行格式化,並且使用大括號 作為特殊字元代替 不指定位置的時候,使用預設位置 不指定格式化位置,按照預設順序格式化 s i and i am lear...

Python 基礎 format 格式化方法

format 方法可以格式化字串,基本語法是通過 和 來代替之前的字元。format 有多個輸出項,位置可以按指定順序設定。print 我是 班 號的學生 format 化工2001 3 我是化工2001班3號的學生 按照預設順序填入 print 我是班號的學生 format 3 化工2001 我是...

python中format的用法

格式化輸出format python學習筆記 用format函式實現對齊列印 居中對齊 靠左對齊 靠右對齊 居中對齊示例 def show n tail 2 n 1 最底下一行顯示出 2 n 1 個星號 width len tail 計算星號所在行的寬度,作為其他行的對齊基準 for i in ra...