Golang 中的占位符详解
在 Go 语言中,格式化输出通常使用 fmt
包中的 Printf
或 Sprintf
函数。这些函数使用占位符来动态插入变量值。Go 语言中的占位符与 C 语言中的 printf
函数的占位符类似。
Go 语言中的占位符格式如下:
%[flags][width][.precision]verb
flags
:标记如-
(左对齐)、+
(在正数前面显示加号)、#
(显示特定于格式化类型的额外信息,例如十六进制数的0x
或八进制的0
前缀)、0
(数字前补零)、空格(在正数前加空格)等。width
:用于指定最小宽度。precision
:用于限制最大宽度或小数点后的位数。verb
:用于指定格式化的类型,例如%s
表示字符串,%d
表示十进制整数,%x
表示十六进制整数等。
例如:
package main
import "fmt"
func main() {
name := "John"
age := 30
// 格式化输出字符串
fmt.Printf("Name: %s, Age: %d\n", name, age)
// 格式化输出,左对齐,宽度为10
fmt.Printf("Name: %-10s, Age: %d\n", name, age)
// 格式化输出,带有特定标记的浮点数
salary := 30000.30
fmt.Printf("Salary: %#.2f\n", salary)
}
在这个例子中,%s
是一个字符串占位符,%d
是一个十进制整数占位符,%-10s
表示一个左对齐的宽度为10的字符串占位符,%#.2f
表示一个带有小数点前两位的浮点数占位符。
评论已关闭