官术网_书友最值得收藏!

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 運行結果

主站蜘蛛池模板: 清水河县| 雷山县| 永胜县| 大港区| 桂林市| 通州区| 民和| 郧西县| 广安市| 河东区| 福贡县| 凭祥市| 道孚县| 韶关市| 鸡东县| 伊春市| 慈溪市| 安远县| 昌江| 玉龙| 长治县| 徐汇区| 探索| 新丰县| 南靖县| 泽普县| 福州市| 布尔津县| 堆龙德庆县| 枣强县| 平原县| 云龙县| 静海县| 抚宁县| 瑞昌市| 贵阳市| 乌恰县| 和硕县| 巫山县| 桂阳县| 潞西市|