本文摘自网络,作者,侵删。
格式化
Golang的fmt
包中含有格式化I/O函数,类似于C语言中的printf
和scanf
。
函数 | 描述 |
---|---|
fmt.Print | 输出到控制台,不接受任何格式化操作。 |
fmt.Println | 输出到控制台并换行 |
fmt.Printf | 仅打印出格式化的字符串 |
fmt.Sprintf | 格式化并返回一个字符串而不带任何输出 |
fmt.Fprintf | 格式化并输出到io.Writer而非io.Stdout |
占位符
普通占位符 | 描述 |
---|---|
%v | 值的默认格式 |
%+v | 打印结构体时会添加字段名 |
%#v | 相应值的Golang语法表示 |
%T | 相应值类型的Golang语法表示 |
%% | 字面上的百分号 |
布尔占位符 | 描述 |
---|---|
%t | 输出布尔值true或false |
整数占位符 | 描述 |
---|---|
%b | 二进制表示 |
%c | 相应Unicode码点所表示的字符 |
%d | 十进制表示 |
%o | 八进制表示 |
%x | 十六进制表示,字母形式为小写。 |
%X | 十六进制表示,字母形式为大写。 |
%U | Unicode格式 |
%q | 单引号围绕的字符字面值,由Golang语法安全地转义。 |
小数占位符 | 描述 |
---|---|
%f | 等同于%.6f ,6位小数点,有小数点而无指数。 |
%e | 等同于%.6e ,6位小数点,科学计数法。 |
%E | 科学计数法 |
%g | 根据情况选择%e或%f以产生更为紧凑的输出 |
%G | 根据情况选择%E或%f以产生更为紧凑的输出 |
序列占位符 | 描述 |
---|---|
%s | 输出字符串表示 |
%10s | 输出字符串最小宽度为10且右对齐 |
%-10s | 输出字符串最小宽度为10且左对齐 |
%.5s | 输出字符串最大宽度为5 |
%5.10s | 输出字符串最小宽度为5,最大宽度为10。 |
%-5.10s | 输出字符串最小宽度为5,最大宽度为10,左对齐。 |
%5.3s | 输出字符串宽度为5,若源字符串宽度大于3则截断。 |
%010s | 若宽度小于10则在字符串前补零 |
%q | 双引号围绕的字符串,由Golang语法安全地转义。 |
指针占位符 | 描述 |
---|---|
%p | 十六进制和,前缀为0x。 |
%#p | 不带前缀ox的十六进制 |
标志符
标志符 | 描述 |
---|---|
+ | 总打印数值的正负号 |
- | 左对齐 |
# | 备用格式 |
‘ ’ | 空格留白 |
0 | 填充前导零而非空格 |
gofmt
Golang制定了统一的官方代码风格,并推出gofmt
工具(go fmt
)来帮助开发人员格式化代码到统一的风格。
gofmt
是一个命令行工具,会优先读取标准输入,若传入了文件路径则会格式化此文件。若传入是一个目录则会格式化目录中所有的.go
文件。若不传入参数则会格式化当前目录下所有.go
文件。
本文来自:简书
感谢作者:JunChow520
查看原文:Go fmt
相关阅读 >>
kube-apiserver内存溢出问题调查及Go tool pprof工具的使用
更多相关阅读请进入《Go》频道 >>

Go语言101
一个与时俱进的Go编程知识库。