返回

Go 编程 | 连载 08 - 格式化输入输出之二

后端

在上一篇文章中,我们学习了格式化输出中的缺省占位符和整型占位符。本文中,我们将继续讲解格式化输出中的其他类型占位符以及格式化输入。

浮点占位符

浮点数占位符用于格式化输出浮点型数据。浮点占位符的格式为:

%<精度>.<小数位数>f

其中:

  • <精度>指定浮点数的总宽度。
  • <小数位数>指定浮点数的小数位数。
  • f指定浮点数的格式。

例如,以下代码将以两位小数的精度输出浮点型变量 myFloat

fmt.Printf("%6.2f", myFloat)

输出结果为:

123.45

如果省略 <精度>,则浮点数的总宽度将由小数位数和格式字符决定。例如,以下代码将以一位小数的精度输出浮点型变量 myFloat

fmt.Printf("%.1f", myFloat)

输出结果为:

123.5

字符占位符

字符占位符用于格式化输出字符型数据。字符占位符的格式为:

%c

例如,以下代码将输出字符型变量 myChar

fmt.Printf("%c", myChar)

输出结果为:

A

字符串占位符

字符串占位符用于格式化输出字符串型数据。字符串占位符的格式为:

%s

例如,以下代码将输出字符串型变量 myString

fmt.Printf("%s", myString)

输出结果为:

Hello, world!

布尔值占位符

布尔值占位符用于格式化输出布尔型数据。布尔值占位符的格式为:

%t

例如,以下代码将输出布尔型变量 myBool

fmt.Printf("%t", myBool)

输出结果为:

true

指定输出格式

除了使用占位符来格式化输出外,还可以使用 fmt.Sprintf() 函数来指定输出格式。fmt.Sprintf() 函数的格式为:

func Sprintf(format string, args ...interface{}) string

其中:

  • format指定输出格式。
  • args是要格式化的参数。

例如,以下代码将以两位小数的精度输出浮点型变量 myFloat

result := fmt.Sprintf("%.2f", myFloat)
fmt.Println(result)

输出结果为:

123.45

格式化输入

格式化输入与格式化输出类似,但它是将输入的数据按照指定的格式读入到变量中。格式化输入的语法为:

fmt.Scanf(format, args...)

其中:

  • format指定输入格式。
  • args是要读入的变量。

例如,以下代码将从标准输入读取一个整数并将其存储在变量 myInt 中:

fmt.Scanf("%d", &myInt)

总结

本文中,我们学习了格式化输出中的其他类型占位符以及格式化输入。希望这些知识对您有所帮助。