在 Go 语言中,占位符用于格式化字符串,并可以在后续的操作中用实际的值替换它们。Go 语言标准库中的 fmt
包提供了多种格式化字符串的方法,其中最常用的是 Printf
、Sprintf
和 Fprintf
。
以下是 Go 语言中常用的 20 个占位符及其含义:
%v
:默认格式输出值。%+v
:类似 %v
,但输出结构体时会包含字段名。%#v
:输出值的 Go 语法表示。%T
:输出值的类型。%t
:输出布尔值的文本表示(true 或 false)。%b
:输出二进制表示。%d
:输出十进制整数。%o
:输出八进制表示。%x
:输出十六进制表示,使用小写字母。%X
:输出十六进制表示,使用大写字母。%U
:输出 Unicode 格式。%f
:输出浮点数。%e
:输出科学计数法表示的浮点数,使用小写字母 'e'。%E
:输出科学计数法表示的浮点数,使用大写字母 'E'。%g
:根据值的大小自动选择 %f
或 %e
格式。%G
:根据值的大小自动选择 %F
或 %E
格式。%s
:输出字符串。%q
:输出带双引号的字符串,如果字符串包含转义字符,则转义它们。%c
:输出字符。%p
:输出指针的十六进制表示。这些占位符可以与格式化字符串中的其他文本混合使用,以实现复杂的输出格式。例如:
package main
import "fmt"
func main() {
name := "Alice"
age := 30
fmt.Printf("My name is %s and I'm %d years old.\n", name, age)
}
上面的代码会输出 My name is Alice and I'm 30 years old.
,其中 %s
和 %d
分别被 name
和 age
的值替换。