- Python 3.6從入門到精通(視頻教學版)
- 王英英
- 655字
- 2019-12-06 14:20:01
4.3 格式化字符串
Python支持格式化字符串的輸出。字符串格式化使用字符串操作符百分號(%)來實現。在百分號的左側放置一個字符串(格式化字符串),右側放置希望被格式的值。可以使用一個值,如一個字符串或數字,也可以使用多個值的元組或字典。例如:
>>>a = "目前市場上%s的價格為每公斤%d元。" >>>b = ('蘋果',20) >>>c= a % b >>>print (c)
運行結果如圖4-19所示。

圖4-19 運行結果
%左邊放置了一個待格式化的字符串,右邊放置的是希望格式化的值。格式化的值可以是一個字符串或數字。
上述%s和%d為字符串格式化符號,標記了需要放置轉換值的位置。其中,s表示百分號右側的值會被格式化為字符串,d表示百分號右側的值會被格式化為整數。
Python中字符串格式化符號如表4-2所示。
表4-2 Python中字符串格式化符號

這里特別指出,若格式化浮點數,則可以提供所需要的精度,即一個句點加上需要保留的小數點位數。因為格式化字符總是以類型的字符結束,所以精度應該放在類型字符前面。例如:
>>>a = "今天的蘋果的售價為每公斤%.2f元。" >>>b =20.16 >>>c= a % b >>>print (c)
運行結果如圖4-20所示。

圖4-20 運行結果
如果不指定精度,默認情況下就會顯示6位小數。例如:
>>>a = "今天的蘋果的售價為每公斤%f元。" >>>b =20.16 >>>c=a % b >>>print (c)
運行結果如圖4-21所示。

圖4-21 運行結果
如果要在格式化字符串中包含百分號,就必須使用%%,這樣Python才不會將百分號誤認為格式化符號。例如:
>>>a = "今年蘋果的銷售額比去年提升了:%.2f%%" >>>b =20.16 >>>c=a % b >>>print (c)
運行結果如圖4-22所示。

圖4-22 運行結果
另外,還有一種方式也可以實現上述結果,代碼如下:
>>>a = "今年蘋果的銷售額比去年提升了:%.2f" >>>b =20.16 >>>c=a % b >>>print (c+"%")
運行結果如圖4-23所示。

圖4-23 運行結果
推薦閱讀