导航
×
   ❮   
HTML CSS JavaScript PHP Go ECMS

Go 格式化动词


Printf() 的格式化动词

Go 提供了几个可与 Printf() 函数一起使用的格式化动词。


通用格式化动词

以下动词可用于所有数据类型

动词 描述
%v 以默认格式打印值
%#v 以 Go 语法格式打印值
%T 打印值的类型
%% 打印 % 符号

实例

package main
import ("fmt")

func main() {
  var i = 15.5
  var txt = "Hello World!"

  fmt.Printf("%v\n", i)
  fmt.Printf("%#v\n", i)
  fmt.Printf("%v%%\n", i)
  fmt.Printf("%T\n", i)

  fmt.Printf("%v\n", txt)
  fmt.Printf("%#v\n", txt)
  fmt.Printf("%T\n", txt)
}

结果

15.5
15.5
15.5%
float64
Hello World!
"Hello World!"
string
亲自试一试 »

整数格式化动词

以下动词可用于整数数据类型

动词 描述
%b 基数 2
%d 基数 10
%+d 基数 10 并始终显示符号
%o 基数 8
%O 基数 8,带前导 0o
%x 基数 16,小写
%X 基数 16,大写
%#x 基数 16,带前导 0x
%4d 用空格填充(宽度 4,右对齐)
%-4d 用空格填充(宽度 4,左对齐)
%04d 用零填充(宽度 4

实例

package main
import ("fmt")

func main() {
  var i = 15
 
  fmt.Printf("%b\n", i)
  fmt.Printf("%d\n", i)
  fmt.Printf("%+d\n", i)
  fmt.Printf("%o\n", i)
  fmt.Printf("%O\n", i)
  fmt.Printf("%x\n", i)
  fmt.Printf("%X\n", i)
  fmt.Printf("%#x\n", i)
  fmt.Printf("%4d\n", i)
  fmt.Printf("%-4d\n", i)
  fmt.Printf("%04d\n", i)
}

结果

1111
15
+15
17
0o17
f
F
0xf
  15
15
0015
亲自试一试 »

字符串格式化动词

以下动词可用于字符串数据类型

动词 描述
%s 以纯字符串形式打印值
%q 以双引号字符串形式打印值
%8s 以纯字符串形式打印值(宽度 8,右对齐)
%-8s 以纯字符串形式打印值(宽度 8,左对齐)
%x 打印字节值的十六进制转储
% x 打印带空格的十六进制转储

实例

package main
import ("fmt")

func main() {
  var txt = "Hello"
 
  fmt.Printf("%s\n", txt)
  fmt.Printf("%q\n", txt)
  fmt.Printf("%8s\n", txt)
  fmt.Printf("%-8s\n", txt)
  fmt.Printf("%x\n", txt)
  fmt.Printf("% x\n", txt)
}

结果

Hello
"Hello"
   Hello
Hello
48656c6c6f
48 65 6c 6c 6f
亲自试一试 »

布尔值格式化动词

以下动词可用于布尔值数据类型

动词 描述
%t 布尔运算符的值,以 true 或 false 格式显示(与使用 %v 相同)

实例

package main
import ("fmt")

func main() {
  var i = true
  var j = false

  fmt.Printf("%t\n", i)
  fmt.Printf("%t\n", j)
}

结果

true
false
亲自试一试 »

浮点数格式化动词

以下动词可用于浮点数数据类型

动词 描述
%e 使用 'e' 作为指数的科学计数法
%f 小数点,无指数
%.2f 默认宽度,精度 2
%6.2f 宽度 6,精度 2
%g 根据需要使用指数,仅显示必要数字

实例

package main
import ("fmt")

func main() {
  var i = 3.141

  fmt.Printf("%e\n", i)
  fmt.Printf("%f\n", i)
  fmt.Printf("%.2f\n", i)
  fmt.Printf("%6.2f\n", i)
  fmt.Printf("%g\n", i)
}

结果

3.141000e+00
3.141000
3.14
  3.14
3.141
亲自试一试 »

freew3c.com 中文网是独立运营的中文开发者学习平台,与 freew3c.com 无关联。提供的内容仅用于学习和测试,不保证内容的正确性。


Copyright @2020-2026 京ICP备888888号-8