使用 Go fmt 包

在 Go 语言中,fmt 包是一个非常重要的标准库,它提供了一系列函数,用于格式化输入和输出。在本文中,我们将探讨 fmt 包的使用,以及它的一些基本功能。

格式化输出

fmt 包最常见的用途是格式化输出。我们可以使用 fmt.Printf() 函数将指定的输出格式写入标准输出。例如,下面的代码将输出一个字符串和一个整数:

1
2
3
4
5
6
7
8
9
10
package main

import "fmt"

func main() {
name := "Alice"
age := 23
fmt.Printf("My name is %s and I'm %d years old.\\n", name, age)
}

输出结果为:

1
2
My name is Alice and I'm 23 years old.

在上面的代码中,我们使用 %s 和 %d 来指定字符串和整数的输出格式。在 Printf() 函数中,我们使用这些格式化字符串来指定输出的内容。当我们使用多个格式化字符串时,我们需要将它们放在一起,并用逗号分隔。

除了 Printf() 函数之外,fmt 包还提供了其他一些类似的函数,如 fmt.Sprintf() 和 fmt.Fprintf(),它们分别可以将输出写入字符串和指定的文件流中。

格式化输入

除了格式化输出之外,fmt 包也提供了一些函数用于格式化输入,例如 fmt.Scanf() 和 fmt.Fscanf()。这些函数可以从标准输入或指定的文件流中读取指定格式的输入,并将它们存储到变量中。例如,下面的代码将从标准输入中读取一个字符串和一个整数:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
package main

import "fmt"

func main() {
var name string
var age int
fmt.Printf("Enter your name: ")
fmt.Scanf("%s", &name)
fmt.Printf("Enter your age: ")
fmt.Scanf("%d", &age)
fmt.Printf("Your name is %s and you're %d years old.\\n", name, age)
}

输出结果为:

1
2
3
4
Enter your name: Alice
Enter your age: 23
Your name is Alice and you're 23 years old.

在上面的代码中,我们使用 %s 和 %d 来指定字符串和整数的输入格式。我们使用 Scanf() 函数将输入格式化并存储到变量中。与 Printf() 函数类似,我们需要将格式化字符串作为第一个参数传递给 Scanf() 函数,并将每个变量的地址作为第二个参数传递。

其他功能

除了格式化输入和输出之外,fmt 包还提供了一些其他有用的函数,例如 Errorf() 函数和 Panicf() 函数,它们分别用于生成格式化的错误消息和触发带格式化消息的 panic。

我们还可以使用 fmt 包中的一些函数来格式化日期、数字等内容。有关更多信息,请参阅 Go 官方文档。

结论

在本文中,我们简要介绍了 Go 语言中 fmt 包的使用。fmt 包是一个非常重要的标准库,它提供了一系列函数,用于格式化输入和输出。我们可以使用这些函数来格式化字符串、数字、日期等内容。希望本文能够帮助您学习 fmt 包的基本用法。