顺晟科技
2021-08-28 09:41:42
117
Golang的fmt软件包实现了与C的printf和scanf相似的格式化I/o函数。
#示例类型和变量定义
Type Human struct {
Name string
}
VAR People=Human { Name 3360 ' Jangsan ' }
一般预留位置
占位符说明是示例输出
%v该值的默认格式。printf(“% v”,people){ Jangsan },
打印% v结构时,将添加字段名称printf(“% v”,people){ name 3360 zhangsan }
%#v相应值的Go语法表示printf ('# v ',people)main . human { name 3360 ' zhangsan ' }
%T该值类型的Go语法为Printf('%T ',people) main。表示Human
顾名思义,百分比符号不是值的占位符Printf(“% %”)%
布尔占位符
占位符说明是示例输出
%t true或false。printf(“% t”,true) true
整数占位符
占位符说明是示例输出
%b二进制文件表示Printf(“% b”,5) 101
%c对应的unicode代码点所代表的字符Printf(“% c”,0x4E2D)中
%d十进制数表示Printf(“% d”,0x12) 18
%o八进制数表示Printf(“% d”,10) 12
用%q单引号括起来的文字文字由Go语法安全地从Printf(“% q”,0x4E2D)中转义
%x十六进制表示法,小写字母A-F Printf(“% x”,13) d
%X十六进制表示法,大写A-F Printf('%x ',13) D
% U unicode格式:U 1234对应于“U x”printf(“% U”,0x4e2d) u4e2d
浮点数和复数形式的组件(物理和虚拟)
占位符说明是示例输出
没有%b小数部分的指数2的平方的科学计算方法,
Strconv。与FormatFloat的“b”转换格式匹配。示例:-123456p-78
%e科学标记法(例如:-1234.456 e78 printf ('%e ',10.2) 1.020000e01)
%E科学标记法(例如:-1234.456 e78 printf ('%e ',10.2) 1.020000e01)
%f有小数点,如123.456 printf ('%f ',10.2) 10.200000,没有指数
%g根据需要选择%e或%f以生成更简洁的(无止境的0)输出Printf(“% g”,10.20) 10.2
%G根据需要选择%E或%f以生成更简洁的(无止境的0)输出Printf(“% G”,10.20 2i) (10.2 2i)
字符串和字节切片
占位符说明是示例输出
%s输出字符串表示(string类型或[]byte) Printf('%s ',[]byte('Go语言'))Go语言
用%q双引号括起来的字符串用Go语法安全地转义PRINTF(“% Q”,“Go语言”)“Go语言”
%x十六进制数,小写,每字节2个字符printf(“% x”,“Golang”)676 F6 C616E 67
%X十六进制数,大写,每字节2个字符printf(“% X”,“Golang”)676 F6 C616E 67
指针
占位符说明是示例输出
%p十六进制数表示前缀0x Printf(“% p”,people)0x4f57f0
其他标记
占位符说明是示例输出
总打印值的符号;对于%q(% q),请只输出ASCII编码的字符。
Printf('% q ',中文)' \u4e2d\u6587 '
-在右侧而不是左侧填充空格(区域向左对齐)
#替换类型:在八进制数中添加前导0(% # o)Printf(“% # U”,“中间”)U 4E2D
向十六进制数中添加前导0x(%#x)或0x(%#X),并删除%p(%#p)的前导0X。
如果可能,%q(%#q)将打印原始字符串(即用反引号括起来的字符串)。
如果字符是可打印的,则%U(%#U)是该字符的
unicode编码格式(例如,字母x以U 0078 'x '打印)。
(空格)为数值中省略的符号留下空格(%d)。
以十六进制数(%x,% X)打印字符串或切片时,字节之间用空格分隔
零(0)用前导零代替空格。对于数字,这样会将填充移动到符号后面
Golang没有“%u”点字符。如果整数是无符号类型,则默认情况下打印为无符号。
宽度和精度的控制格式是unicode代码点单位。宽度是数字占用区域的最小宽度。精度是小数点后的位数。
如果操作数类型为int,则宽度和精度都用字符“*”表示。
对于%g/%G,精度是所有数字的总数。例如,123.45,%.4g打印123.5,%6.2f打印123.45。
%e和%f的默认精度为6
对于大多数数字类型,宽度是输出中的最小字符数,并在必要时用格式化的格式填充空格。
对于字符串类型,精度是输出的更大字符数,必要时会直接截断。
11
2022-05
28
2021-08
28
2021-08
28
2021-08
16
2021-06
16
2021-06