【Go快速入门】格式化输出函数

2019-03-07  本文已影响0人  海阳之新

一、输出函数

常用有3个:

注:
1、使用前需要先导入fmt包:import "fmt"
2、如果是输出字符串,不能使用单引号,需要使用双引号,否则报错
3、Print、Println、Printf三个函数都支持直接输出数组,Print、Println类似php中的echo函数

二、占位符

占位符 作用
%d 用于以10进制显示整数类型值
%X 用于以16进制显示整数类型值
%f 用于以通常的方法显示浮点数类型值,不包括指数
%E或%e 用于以带指数部分的表示法显示浮点数类型值,小写e在结果中也显示小写
%s 用于显示字符串类型值
%c 用于显示rune类型值代表的字符
%q 用于显示字符串值的表象值并用双引号包裹
%v 用于显示逻辑值、数组值、切片值
%q 用于显示双引号包裹的字符串
%T 用于输出数据类型

%d 用于以10进制显示整数类型值
例如:

var (
        yyy1 int = 123
        xxx1 int = 456
    )
fmt.Printf("yyy1 = %d, xxx1 = %d\n", yyy1, xxx1)

显示效果:yyy1 = 123, xxx1 = 456


%X 用于以16进制显示整数类型值
例如:

var num1 int = -0x1000
fmt.Printf("16进制数 %X 表示的是 %d。\n", num1, num1)

显示效果:16进制数 -1000 表示的是 -4096


%f 用于以通常的方法显示浮点数类型值,不包括指数
例如:

var num2 float32 = 5.89E-4
fmt.Printf("浮点数 %E 表示的是 %f。\n", num2, num2)

显示效果:浮点数 5.890000E-04 表示的是 0.000589


%E 用于以带指数部分的表示法显示浮点数类型值
例子同上。
小写%e显示效果:浮点数 5.890000e-04 表示的是 0.000589


%s 用于显示字符串类型值

yang := "阳阳阳" // :=为推导运算符,在编译的时候自动辨别变量类型,此处编译后为字符型变量
fmt.Printf("推导定义yang = %s\n", yang)

%c 用于显示rune类型值代表的字符
例如:

var sex rune = '男'
fmt.Printf("字符 '%c' 的Unicode代码点是:%s\n", sex, "U+7537")

显示效果:字符 '男' 的Unicode代码点是:U+7537


%q 用于显示字符串值的表象值并用双引号包裹
例如:

// 声明一个string类型变量并赋值
var str1 string = "\\\"" //如果有转义字符,用双引号即可,如果没有,用反引号`

// 这里用到了字符串格式化函数。其中,%q用于显示字符串值的表象值并用双引号包裹。
fmt.Printf("用解释型字符串表示法表示的 %q 所代表的是 %s \n", str1, `\"`)

显示效果:用解释型字符串表示法表示的 "\\\"" 所代表的是 \"


%v 用于显示逻辑值、数组值、切片值

var a,b int8 = 1,3
fmt.Printf("a与b是否相等,结果为:%v\n", a==b)

显示效果:a与b是否相等,结果为:false

s := []int {1, 2, 3}
fmt.Printf("我是切片s,长度len为:%d,容量cap为:%d,值为:%v\n",  len(s), cap(s), s)

显示效果:我是切片s,长度len为:3,容量cap为:3,值为:[1 2 3]


%q 用于显示双引号包裹的字符串
例如:

fmt.Printf("小明说:%q", "Go语言是世界上最好的语言")

显示效果:小明说:"Go语言是世界上最好的语言"


%T 用于输出数据类型
例如:

var a uint8 = 111
fmt.Printf("a的数据类型为:%T", a);

显示效果:a的数据类型为:uint8

上一篇下一篇

猜你喜欢

热点阅读