Go 中的格式化字符串`fmt.Sprintf()` 和 `fmt.Printf()`
在 Go 中,可以使用 fmt.Sprintf()
和 fmt.Printf()
函数来格式化字符串,这两个函数类似于 C 语言中的 scanf
和 printf
函数。
fmt.Sprintf()
fmt.Sprintf()
函数返回一个格式化后的字符串,而不是将其打印到标准输出流中。下面是一个例子:
package main
import "fmt"
func main() {
name := "Mazey"
age := 24
str := fmt.Sprintf("My name is %s and I'm %d years old.", name, age)
fmt.Println(str)
}
输出:
My name is Mazey and I'm 24 years old.
在这个例子中,使用了 %s
和 %d
格式化动词来格式化字符串。s
用于字符串,d
用于整数。
fmt.Printf()
fmt.Printf()
函数将格式化后的字符串打印到标准输出流中。下面是一个例子:
package main
import "fmt"
func main() {
name := "Mazey"
age := 24
fmt.Printf("My name is %s and I'm %d years old.", name, age)
}
输出:
My name is Mazey and I'm 24 years old.
在这个例子中,使用了 %s
和 %d
格式化动词来打印格式化字符串。s
用于字符串,d
用于整数。
格式化动词 Verbs
在 Go 中,可以使用不同的格式化动词来格式化不同类型的数据。下面是五个最常用的格式化动词:
%s
:用于字符串%t
:用于布尔值%d
:用于有符号十进制整数%f
:用于浮点数%v
:用于任何值
参数索引 Argument Indexes
如果想要在格式化字符串中引用相同类型的多个参数,可以使用参数索引。例如:
package main
import "fmt"
func main() {
fmt.Printf("%[2]d %[1]d", 2, 3)
}
输出:
3 2
在这个例子中,使用了参数索引来交换 %d
格式化动词引用的参数顺序。
总结
在 Go 中,可以使用 fmt.Sprintf()
和 fmt.Printf()
函数来格式化字符串。本文介绍了五个最常用的格式化动词和参数索引的使用方法。
版权声明
本博客所有的原创文章,作者皆保留版权。转载必须包含本声明,保持本文完整,并以超链接形式注明作者后除和本文原始地址:https://blog.mazey.net/3558.html
(完)
GitHub: https://github.com/mazeyqian
Blog: https://blog.mazey.net/
Blog: https://blog.mazey.net/