python格式化输出
一、什么叫格式化输出
数据按照某种特殊的格式和要求进行输出
二、python格式化输出
在python中经常会用到各种格式化输出方式来拼接变量、字符串等内容,常用的方式主要有以下几种
1. 使用%来格式化(需要格式化输出的地方用%来代替,%开头的只是一个转换说明符,只是一个占位符,它会被后面表达式(变量、常量、数字、字符串等各种形式)的值代替)
注意:不同类型的内容要匹配不同的%格式,如下所示
1)字符串格式化输出(%s)
print("my name is %s"% "David")
2)整数格式化输出(%d)
print("your age is %d"% 18),
3)浮点数格式化输出(%f)
print("your weight is %f"% 100.5)
4)指定浮点数小数点后位数格式化输出(%.2f,其中2表示保留小数点后两位)
print("you weight is %.2f" %100.526)
5)原样输出%r
print ("what's your name? %r" % "my name is maya")
6)指定占位符宽度
print ("my name is: %8s" % "maya")
print ("my name is: %-8s" % "maya") #左侧对齐
7)其他转换说明符
转换说明符 | 解释 |
---|---|
%d、%i | 转换为带符号的十进制整数 |
%o | 转换为带符号的八进制整数 |
%x、%X | 转换为带符号的十六进制整数 |
%e | 转化为科学计数法表示的浮点数(e 小写) |
%E | 转化为科学计数法表示的浮点数(E 大写) |
%f、%F | 转化为十进制浮点数 |
%g | 智能选择使用 %f 或 %e 格式 |
%G | 智能选择使用 %F 或 %E 格式 |
%c | 格式化字符及其 ASCII 码 |
%r | 使用 repr() 函数将表达式转换为机器方便识别的字符串 |
%s | 使用 str() 函数将表达式转换为字符串 |
2. 使用str.format()
这种方式把需要格式化输出的地方用{}来代替,然后在format函数的参数内按照顺序写入各个变量对应的值,format 函数里面可以接受不限个参数,位置可以不按顺序,但是要和前面的{}的位置一一对应上才能取到对应的值
1)占位符不指定编号,取值按顺序
print("名称:{},地址:{}".format("maya","beijing"))
2)占位符指定数字编号,可通过调换数字改变取值
print("名称:{0},地址:{1}".format("maya","beijing"))
调换数字编号后:
print("名称:{1},地址:{0}".format("maya","beijing"))
3)占位符指定变量名,format函数中指定变量值,通过相同变量名取值
print("名称:{name},地址:{address}".format(name="maya",address="beijing"))
3. 使用f ' '的方法来格式化输出:只需要在字符串前加 f或F,替换的内容中使用{变量名}表示即可
这是python3.6新增的内容,如下图所示