如何輸出格式化的字符串(學習筆記四)
如何輸出格式化的字符串(學習筆記四)
我們經常會輸出類似 ‘親愛的xxx你好!你xx月的話費是xx,余額是xx‘ 之類的字符串,而xxx的內容都是根據變量變化的,所以,需要一種簡便的格式化字符串的方式。
在Python中,采用的格式化方式和C語言是一致的,用 % 實現,舉例如下:
>>> ‘Hello, %s‘ % (‘world‘)
‘Hello, world‘
截圖如下:
註:
(1)紅線上的百分號,兩邊可有空格也可無;
(2)對於只有一個變量的情況,我們可以將‘world‘外的括號省略,則上面代碼可以如下寫:
>>> ‘Hello, %s‘ % ‘world‘
‘Hello, world‘
那麽當出現兩個變量時,我們應該怎麽表示呢?如下:
>>> ‘Hi, %s, you have $%d.‘ % (‘wtf‘, 100)
‘Hi, wtf, you have $100.‘
註:
常見的占位符有:
%d 整數
%f 浮點數
%s 字符串
%x 十六進制整數
現在簡單介紹下,格式化整數和浮點數還可以指定是否補0和整數與小數的位數:
(1)格式化整數,可以指定整數的位置,如下:
>>> ‘%d-%d‘%(3,1)
‘3-1‘
>>> ‘%1d-%d‘%(3,1)
‘3-1‘
>>> ‘%2d-%d‘%(3,1)
‘ 3-1‘
>>> ‘%3d-%d‘%(3,1)
‘ 3-1‘
截圖如下:
(2)格式化整數,可以指定是否補零,如下:
>>> ‘%d-%d‘%(3,1)
‘3-1‘
>>> ‘%d-%01d‘%(3,1)
‘3-1‘
>>> ‘%d-%02d‘%(3,1)
‘3-01‘
>>> ‘%d-%03d‘%(3,1)
‘3-001‘
截圖如下:
(3)格式化整數指定整數位置和補零,如下:
>>> ‘%2d-%02d‘ % (3, 1)
‘ 3-01‘
(4)格式化浮點數
>>> ‘%.2f‘ % 3.1415926
‘3.14‘
擴展
(1)如果你不太確定應該用什麽, %s 永遠起作用,它會把任何數據類型轉換為字符串:
>>> ‘Age: %s. Gender: %s‘ % (25, True)
‘Age: 25. Gender: True‘
(2)對於Unicode字符串,用法完全一樣,但最好確保替換的字符串也是Unicode字符串:
>>> u‘Hi, %s‘ % u‘Michael‘
u‘Hi, Michael‘
(3)有些時候,字符串裏面的 % 是一個普通字符怎麽辦?這個時候就需要轉義,用 %% 來表示一個 % :
>>> ‘growth rate: %d %%‘ % 7
‘growth rate: 7 %‘
本文出自 “聖騎士控魔之手” 博客,請務必保留此出處http://wutengfei.blog.51cto.com/10942117/1922734
如何輸出格式化的字符串(學習筆記四)