一文了解 Go fmt 标准库的常用占位符及其简单使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一文了解 Go fmt 标准库的常用占位符及其简单使用相关的知识,希望对你有一定的参考价值。

耐心和持久胜过激烈和狂热。

哈喽大家好,我是陈明勇,今天分享的内容是 Go fmt 标准库的常用占位符及其简单使用。如果本文对你有帮助,不妨点个赞,如果你是 Go 语言初学者,不妨点个关注,一起成长一起进步,如果本文有错误的地方,欢迎指出!

占位符

通过占位符,可以指定格式进行输入或输出,以下为 ​​fmt​​ 标准库里的占位符:

  • 普通占位符

占位符

描述

举例

结果

%v

默认格式的值

fmt.Printf("%v", UserName: "小明", Age: 18)

小明 18

%+v

如果打印的是结构体,额外打印字段名

fmt.Printf("%+v", UserName: "小明", Age: 18)

Name:小明 Age:18

%#v

对应值的 Go 语法表示

fmt.Printf("%#v", UserName: "小明", Age: 18)

main.UserName:"小明", Age:18

%T

对应值类型的 Go 语法表示

fmt.Printf("%T", UserName: "小明", Age: 18)

main.User

%%

非占位符,而是字面上的 %

fmt.Printf("%%")

%

  • 布尔

占位符

描述

举例

结果

%t

对应值 true 或 false

fmt.Printf("%t", false)

false

  • 整数

占位符

描述

举例

结果

%b

二进制的形式

fmt.Printf("%b", 2)

10

%c

对应的Unicode码位表示的字符

fmt.Printf("%c", 65)

A

%d

十进制的形式

fmt.Printf("%d", 10)

10

%5d

十进制的形式,长度为5,长度不够用空格来补

fmt.Printf("%5d", 123)

__123,由于空格显示不出来,用下划线表示空格

%o

八进制的形式

fmt.Printf("%o", 10)

12

%O

前缀为0o的八进制的形式

fmt.Printf("%O", 10)

0o12

%q

使用 Go 语法安全转义的单引号字符文字

fmt.Printf("%q", 65)

A

%x

十六进制的形式,字母部分用小写字母 a-f 表示

fmt.Printf("%x", 12)

c

%X

十六进制的形式,字母部分用大写字母 A-F 表示

fmt.Printf("%X", 12)

C

%U

Unicode 格式

fmt.Printf("%U", 15)

U+000F

  • 浮点数

占位符

描述

举例

结果

%f

打印小数,默认的长度和小数,小数精度为 6 位

fmt.Printf("%f", 1.50000000001)

1.500000

%5f

长度为 5(整数和小数点以及小数加起来的长度),默认小数精度6位,长度不够则用空格来补

fmt.Printf("%10f", 0.1)

__0.100000,由于空格显示不出来,用下划线表示空格

%.3f

默认长度,小数精度为 3

fmt.Printf("%.3f", 0.1)

0.100

%7.3f

长度为 7(整数和小数点以及小数加起来的长度),小树精度为 3

fmt.Printf("%7.3f", 0.1)

__ 0.100,由于空格显示不出来,用下划线表示空格

  • 字符串和字节切片

占位符

描述

举例

结果

%s

输出 string 类型或 []byte 类型的字符串形式

fmt.Printf("%s, %s", "haha", []byte("haha"))

haha, haha

%q

加上双引号的字符串

fmt.Printf("%q", "haha")

"haha"

%x

十六进制的形式,字母用小写表示,每个字节两个字符

fmt.Printf("%x", "hello")

68656c6c6f

%X

十六进制的形式,字母用大写表示,每个字节两个字符

fmt.Printf("%X", "hello")

68656C6C6F

  • 切片

占位符

描述

举例

结果

%p

以16进制表示的第0个元素的地址,前缀为0x

fmt.Printf("%p", []int1, 2, 3)

0xc000010120

  • 指针

占位符

描述

举例

结果

%p

16进制表示,前缀为0x

fmt.Printf("%p", &UserName: "小明")

0xc000008078

以上是关于一文了解 Go fmt 标准库的常用占位符及其简单使用的主要内容,如果未能解决你的问题,请参考以下文章

一文了解 Go fmt 标准库输入函数的使用

Go Go 简单的很,标准库之 fmt 包的一键入门

Go Go 简单的很,标准库之 fmt 包的一键入门

一文了解 Go 标准库 strings 常用函数和方法

一文了解 Go 标准库 math 和 rand 的常用函数

golang 中fmt用法