golang-占位符
Printf 格式化输出
通⽤占位符:
v 值的默认格式。
%+v 添加字段名(如结构体)
%#v 相应值的Go语法表⽰
%T 相应值的类型的Go语法表⽰
%% 字⾯上的百分号,并⾮值的占位符
布尔值:
%t true 或 false
整数值:
%b ⼆进制表⽰
%c 相应Unicode码点所表⽰的字符
%d ⼗进制表⽰
%o ⼋进制表⽰
printf怎么格式化输出%q 单引号围绕的字符字⾯值,由Go语法安全地转义
%x ⼗六进制表⽰,字母形式为⼩写 a-f
%X ⼗六进制表⽰,字母形式为⼤写 A-F
%U Unicode格式:U+1234,等同于 "U+%04X"
浮点数及复数:
%b ⽆⼩数部分的,指数为⼆的幂的科学计数法,与 strconv.FormatFloat中的 'b' 转换格式⼀致。例如 -123456p-78
%e 科学计数法,例如 -1234.456e+78
%E 科学计数法,例如 -1234.456E+78
%f 有⼩数点⽽⽆指数,例如 123.456
%g 根据情况选择 %e 或 %f 以产⽣更紧凑的(⽆末尾的0)输出
%G 根据情况选择 %E 或 %f 以产⽣更紧凑的(⽆末尾的0)输出
字符串和bytes的slice表⽰:
%s 字符串或切⽚的⽆解译字节
%q 双引号围绕的字符串,由Go语法安全地转义
%x ⼗六进制,⼩写字母,每字节两个字符
%X ⼗六进制,⼤写字母,每字节两个字符
指针:
%p ⼗六进制表⽰,前缀 0x
这⾥没有 'u' 标记。若整数为⽆符号类型,他们就会被打印成⽆符号的。类似地,这⾥也不需要指定操作数的⼤⼩(int8,int64)。
对于%v来说默认的格式是:
bool: %t
int, int8 etc.: %d
uint, uint8 etc.: %d, %x if printed with %#v
float32, complex64, etc: %g
string: %s
chan: %p
pointer: %p
由此可以看出,默认的输出格式可以使⽤%v进⾏指定,除⾮输出其他与默认不同的格式,否则都可以使⽤%v进⾏替代(但是不推荐使⽤)
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论