python 之format字串格式化

2022-05-11 12:34:43 字數 2505 閱讀 999

print函式之format字串格式化方法的使用與學習筆記。

一、對映關係

(1)「對映」示例,以下通過位置舉例說明:

[+]example_1:

>>> print(":".format('name','age'))

name:age

[+]example_2:

>>> print("{}:{}".format("name","age"))

name:age

[+]example_3:

>>> print("::".format("name","age"))

name:age:name

字串的format函式可以接受不限個引數,位置可以不按順序,可以不用或者用多次,不過2.6不能為空{},2.7才可以。

(2)通過關鍵字引數格式化

>>> print(":".format(age=18,name="michael"))

michael:18

(3)通過物件屬性

class person:

def __init__(self,name,age):

self.name,self.age = name,age

def __str__(self):

return 'this guy is ,is old'.format(self=self)

in [2]: str(person('kzc',18))

out[2]: 'this guy is kzc,is 18 old'

(4)通過format實現列表的字串化

>>> name = ['jack','michael']

>>> print(",".format(name))

michael,jack

有了以上這些便捷的「對映」方式,我們就有了的格式化利器。

基本的python知識告訴我們,list和tuple可以通過「打散」成普通引數給函式,而dict可以打散成關鍵字引數給函式(通過和*)。所以可以輕鬆的傳個list/tuple/dict給format函式。非常靈活。

二、格式限定符

format格式化,它有著豐富的的「格式限定符」(語法是{}中帶:號),

比如「:」、「填充與對齊」、「填充常跟對齊一起使用」;

^、<、>分別是居中、左對齊、右對齊,後面為「限定寬度」;

注意:「:」冒號後面緊跟填充的字元,只能是乙個字元;不指定的話,預設是用空格填充

比如(1)居左、居中,居右顯示

>>> print("########".format("abcd"))            #居左顯示,右邊空出4個字元(填充字元預設為空格)

####abcd ####

>

>> print("########".format("abcd"))

#### abcd ####                  #居中顯示,左右兩邊各空出2個字元(填充字元預設為空格)

>>> print("########".format("abcd"))

#### abcd####                  #右居顯示,左邊空出4個字元(填充字元預設為空格)

>>>

(2) 使用填充字元「+」舉例「居左、居中,居右」顯示

>>> print("########".format("abcd"))

####++++abcd####

>>> print("########".format("abcd"))

####++abcd++####

>>> print("########".format("abcd"))

####abcd++++####

(3)精度與型別f結合使用:

>>> print("".format(3.1415126))

3.142

注:其中.3表示長度為3的精度,f表示float型別。

(4)其他型別

主要就是進製了,b、d、o、x分別是二進位制、十進位制、八進位制、十六進製制。

>>> print("".format(123456))

11110001001000000

>>> print("".format(123456))

123456

>>> print("".format(123456))

361100

>>> print("".format(123456))

1e240

(5)用「,」號作為金額的千位分隔符的格式化。

>>> print("".format(123e10))

1,230,000,000,000.0

摘了之:

python之字串格式化 format

參考 用法 它通過 和 來代替傳統 方式 1 使用位置引數 要點 從以下例子可以看出位置引數不受順序約束,且可以為 只要format裡有相對應的引數值即可,引數索引從0開,傳入位置引數列表可用 列表 li hoho 18 my name is age format hoho 18 my name i...

python之字串格式化 format

用法 它通過 和 來代替傳統 方式 要點 從以下例子可以看出位置引數不受順序約束,且可以為 只要format裡有相對應的引數值即可,引數索引從0開,傳入位置引數列表可用 列表 li hoho 18 my name is age format hoho 18 my name is hoho age 1...

python之格式化字串( format )

它通過 和 來代替傳統 方式 1 使用位置引數 要點 從以下例子可以看出位置引數不受順序約束,且可以為 只要 format 裡有相對應的引數值即可,引數索引從0開,傳入位置引數列表可用 列表 li hoho 18 my name is age format hoho 18 my name is ho...