![Python入门很轻松(微课超值版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/738/32463738/b_32463738.jpg)
上QQ阅读APP看书,第一时间看更新
5.4 格式化字符串
![](https://epubservercos.yuewen.com/487352/17527146106010506/epubprivate/OEBPS/Images/Figure-P84_54540.jpg?sign=1738853085-rFnQXaJZ2vI4d3qq5InHyRYk5gVzZQzf-0-d409c3f7ba4b9e21d2d17ecf34ab951e)
微视频
Python语言支持格式化字符串的输出。字符串格式化使用字符串操作符百分号(%)来实现。在百分号的左侧放置一个字符串(格式化字符串),右侧放置希望被格式化的值。可以使用一个值,如一个字符串或数字,也可以使用多个值的元组或字典。例如:
>>>x = "我这次%s 的考试成绩为%d 分。" >>>y = ('数学',98) >>>z= x % y >>>print (z) 我这次数学的考试成绩为98分。
%左边放置了一个待格式化的字符串,右边放置的是希望格式化的值。格式化的值可以是一个字符串或数字。
上述%s和%d为字符串格式化符号,标记了需要放置转换值的位置。其中,s表示百分号右侧的值会被格式化为字符串,d表示百分号右侧的值会被格式化为整数。
Python语言中字符串格式化符号如表5-4所示。
表5-4 Python语言中字符串格式化符号
![](https://epubservercos.yuewen.com/487352/17527146106010506/epubprivate/OEBPS/Images/Figure-T85_54544.jpg?sign=1738853085-Nn9k8TwE1wpNIn7oDyyM5HAp3xkesMwZ-0-5e67671a7e8acd91ccc636b5894956d4)
这里特别指出,若格式化浮点数,则可以提供所需要的精度,即一个句点加上需要保留的小数点位数。因为格式化字符总是以类型的字符结束,所以精度应该放在类型字符前面。例如:
>>> x = "我这次数学的考试成绩为%.1f 分。" >>> y =98.5 >>> z= x % y >>> print (z) 我这次数学的考试成绩为98.5分。
如果不指定精度,默认情况下就会显示6位小数。例如:
>>> x = "我这次数学的考试成绩为%f 分。" >>> y =98.5 >>> z= x % y >>> print (z) 我这次数学的考试成绩为98.500000分。
如果要在格式化字符串中包含百分号,就必须使用%%,这样Python才不会将百分号误认为格式化符号。例如:
>>>x = "今年销售额比去年提升了:%.1f%%" >>>y =18.6 >>>z=x % y >>>print (z) 今年销售额比去年提升了:18.6%