Python有哪些格式化输出的方法

前言

我们在编写代码时,经常会有格式化输出的场景。比如接口传入参数,然后需要在日志中打印该参数的内容,这就要用到格式化输出了,这里来总结下python有哪些格式化输出的方式。

%格式化

%格式化的方式类似于C语言中的printf方法,python中用%来执行字符串的格式化。不同数据类型用以下字符来格式化:

  • %s: 字符串
  • %d: 整型
  • %f: 浮点型
  • %.3f:浮点型,保留指定几位小数

示例:

>>> print("今天星期%s,天气:%s, 气温%.1f度" % ('一', '晴朗', 26.5))
今天星期一,天气:晴朗, 气温26.5度

format格式化

format方法用{}标记要被格式化的变量,然后用format解析变量。这种方式的好处是可以按需定义要被格式化的变量名,方便变量的管理。

示例:

>>>>>> print("今天星期{}, 天气:{},气温{}".format("一","晴朗",26.5))
今天星期一, 天气:晴朗,气温26.5
>>> # 自定义变量名
>>> print("今天星期{week}, 天气:{weather},气温{temperature}".format(week="一", weather="晴朗", temperature=26.5))
今天星期一, 天气:晴朗,气温26.5

f格式化

这种方式直接在字符串前用f来格式化。通常在有很多变量需要格式化的字符串中使用,比如在sql拼接时涉及到很多的变量。那么我们可以用f格式化的方式。

示例:

>>> weather="晴朗"
>>> week = "一"
>>> temperature=26.5
>>> print(f"今天星期{week}, 天气:{weather},气温{temperature}")
今天星期一, 天气:晴朗,气温26.5

小结

这里总结了下python格式化输出的方式。个人习惯用format和f来格式化,因为自定义变量名的方式便于测试和管理。你是怎么使用的呢?