python基礎 format格式字串

2021-09-05 12:24:18 字數 1831 閱讀 8826

語法:它通過{}和:來代替%。

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

1)通過位置

in [1]: ','.format('kzc',18)

out[1]: 'kzc,18'

in [2]: '{},{}'.format('kzc',18)

out[2]: 'kzc,18'

in [3]: ',,'.format('kzc',18)

out[3]: '18,kzc,18'

2)通過關鍵字引數

in [5]: ','.format(age=18,name='kzc')

out[5]: 'kzc,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)通過下標

in [7]: p=['kzc',18]

in [8]: ','.format(p)

out[8]: 'kzc,18'

1)填充與對齊:填充常跟對齊一起使用

居中 = ^

左對齊 = <

右對齊 = >

後面帶寬度 = :號後面帶填充的字元,只能是乙個字元,不指定的話預設是用空格填充,如下:

in [15]: ''.format('189')

out[15]: ' 189'

in [16]: ''.format('189')

out[16]: '00000189'

in [17]: ''.format('189')

out[17]: 'aaaaa189'

2)精度與型別f:精度常跟型別f一起使用

in [44]: ''.format(321.33345)

out[44]: '321.33'

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

3)其他型別:主要就是進製了,b、d、o、x分別是二進位制、十進位制、八進位制、十六進製制。

in [54]: ''.format(17)

out[54]: '10001'

in [55]: ''.format(17)

out[55]: '17'

in [56]: ''.format(17)

out[56]: '21'

in [57]: ''.format(17)

out[57]: '11'

4)逗號,還能用來做金額的千位分隔符:

in [47]: ''.format(1234567890)

out[47]: '1,234,567,890'

python基礎 format格式化

format hello world 不設定指定位置,按預設順序 hello world format hello world 設定指定位置 hello world format hello world 設定指定位置 world hello world 名 位址 format name aaa ur...

Python 格式化字串與format格式化

號格式化 佔位符格式 描述 d 有符號的整數 s字串 c字元以及asicc碼 o無符號八進位制整數 x x 無符號十六進製制整數 x無符號十六進製制整數 e e 科學記數法 f浮點數 name t age 18print his name is s age is d.name,age print h...

python基礎學習整理 format的使用

year rs.format year,value 稱為字串格式化,大括號和其中的字元會被替換成傳入str.format 的引數,也即year和value。其中的意思是替換為 2 位精度的浮點數。例子 grade print 電工考了 format grade 通過關鍵字,可用字典當關鍵字傳入值時,...