熱線電話:13121318867

登錄
首頁精彩閱讀python中使用%與.format格式化文本方法解析
python中使用%與.format格式化文本方法解析
2018-04-26
收藏

python中使用%與.format格式化文本方法解析

初學python,看來零零碎碎的格式化文本的方法,總結一下python中格式化文本的方法。使用不當的地歡迎指出謝謝。
1、首先看使用%格式化文本
常見的占位符:    
常見的占位符有:
%d  整數
%f  浮點數
%s  字符串
%x  十六進制整數
使用方法:    
>>> 'Hello, %s' % 'world'
'Hello, world'
>>> 'Hi, %s, you have $%d.' % ('Michael', 1000000)
'Hi, Michael, you have $1000000.'
使用的時候不知道寫什么的地方直接使用 %s 進行代替,語句的末尾加上 %() 括號里面直接填寫內容即可(字符串加上引號,中間用“,”分割),如果只有一個%?,括號可以省略。
高級一點的用法:
格式化整數指定是否補零:
首先看代碼:
?    
>>> '%d-%d' % (3, 23)
'3-23'
>>> '%2d-%2d' % (3, 23)
' 3-23'
>>> '%3d-%3d' % (3, 23)
' 3- 23'
>>> '%4d-%4d' % (3, 23)
'  3- 23'
>>> '%01d-%01d' % (3, 23)
'3-23'
>>> '%02d-%02d' % (3, 23)
'03-23'
>>> '%03d-%03d' % (3, 23)
'003-023'
>>> '%04d-%04d' % (3, 23)
'0003-0023'
>>>
可以看得出來,d前面的數字用來指定占位符,表示被格式化的數值占用的位置數量(字節還是什么不知道這樣的表述是否正確),指定之后比如%3d,代表這個整數要占用3個位置,前面如果有0代表占用的地方使用0補齊,沒有就使用空格補齊。指定的空間位置小于實際的數字大小,以實際占用的位置大小為準。
指定小數的位數:    
>>> '%.f' % 3.1415926'3'
>>> '%.1f' % 3.1415926'3.1'
>>> '%.2f' % 3.1415926'3.14'
>>> '%.3f' % 3.1415926'3.142'
>>>
可以看出.后面的數字用來表示保留的小數點的位數,".1"代表保留小數點后面一位小數。
如果不確定應該用什么,%s永遠起作用,它會把任何數據類型轉換為字符串:    
>>> 'Age: %s. Gender: %s' % (25, True)
'Age: 25. Gender: True'

有些時候,字符串里面的%是一個普通字符怎么辦?這個時候就需要轉義,用%%來表示一個%:
    
>>> 'growth rate: %d %%' % 7
'growth rate: 7 %'
嘗試使用其他方法對%進行轉義,但是好像沒有用,有什么其他方法歡迎評論。
2、使用format 方法進行格式化
代碼演示:    
age = 25
name = 'Swaroop'
print('{0} is {1} years old'.format(name, age))
print('Why is {0} playing with that python?'.format(name))
位置使用{1}按照使用的順序寫好,后面格式使用 .format() 寫好對應的參數即可。
輸出結果:    
Swaroop is 25 years old
Why is Swaroop playing with that python?
其實也可以使用第一種方法實現:    
age = 25
name = 'Swaroop'
print('%s is %s years old'%(name, age))
print('Why is %s playing with that python?'%(name))
輸出    
Swaroop is 25 years old
Why is Swaroop playing with that python?
實現的結果都是一樣的。
總結
以上就是本文關于python中使用%與.format格式化文本方法解析的全部內容,希望對大家有所幫助。

數據分析咨詢請掃描二維碼

若不方便掃碼,搜微信號:CDAshujufenxi

數據分析師資訊
更多

OK
客服在線
立即咨詢
日韩人妻系列无码专区视频,先锋高清无码,无码免费视欧非,国精产品一区一区三区无码
客服在線
立即咨詢