小工具知识网

当前位置: 首页 > 行业知识 > Golang 开发实战day02 - Print & Formatting

行业知识

Golang 开发实战day02 - Print & Formatting

2026-11-08 19:03:09 来源:互联网转载

Golang 教程02 - Print,Formatting Strings

Go语言提供了丰富的格式化字符串功能,用于将数据格式化为特定格式的字符串。本课程将详细介绍Go语言中Print和Formatting Strings的用法,并提供代码示例供大家参考。

Print 类型及使用

1.Print

Printf是Go语言中常用的格式化输出函数,它可以将格式化字符串和参数组合在一起,输出到标准输出。

语法:

fmt.Printf(format string, args ...interface{}) (n int, err error)

参数:

  • format string: 格式化字符串,用于指定输出格式
  • args: 可变参数列表,用于提供要格式化的数据
    fmt.Print("hello, ")fmt.Print("world! \n")fmt.Print("new line \n")
    fmt.Println("hello 小叮当!")fmt.Println("goodbye 小叮当!")

    上边两段代码输出都是一样的,ln也就是替代了\n的换行效果

    Output:

    2. Sprintf

    Sprintf类似于Printf,但它不会将输出发送到标准输出,而是将其返回为一个字符串。

    age := 10name := "野比大雄"var str = fmt.Sprintf("my age is %v and my name is %v \n", age, name)fmt.Println("the saved string is:", str)

    Output:

    3. Fprintf

    Fprintf类似于Printf,但它将输出发送到指定的io.Writer。

    语法:

    fmt.Fprintf(w io.Writer, format string, args ...interface{}) (n int, err error)
    • w: io.Writer类型的对象,用于指定输出目标
    • format string: 格式化字符串,用于指定输出格式
    • args: 可变参数列表,用于提供要格式化的数据
      age := 10name := "野比大雄"file, err := os.OpenFile("output.txt", os.O_WRONLY|os.O_CREATE, 0644)if err != nil {    log.Fatal(err)}defer file.Close()fmt.Fprintf(file, "Hello, %s! You are %d years old.\n", name, age)}

      这里的Output内容,是会将如下内容打印到output.txt文件中,文件的生成位置在我们运行项目的默认路径下。

      Formatting Strings

      Go语言的格式化字符串由普通文本和格式化指令组成。格式化指令用于指定如何格式化数据。

      1. 常见的格式化指令:

      %v: 默认格式化,根据数据类型自动选择格式

      %d: 十进制整数

      %o: 八进制整数

      %x: 十六进制整数

      %f: 浮点数

      %s: 字符串

      %t: 布尔值

      name := "野比大雄"age := 10pi := 3.1415926535fmt.Printf("%s is %d years old.\n", name, age)fmt.Printf("The value of pi is %f.\n", pi)fmt.Printf("Is pi greater than 3? %t\n", pi > 3)

      Output:

      2. 格式化选项:

      格式化指令还可以使用格式化选项来控制输出格式。

      常见的格式化选项:

      %+v: 显示结构体的字段名

      %#v: 显示 Go 代码格式的表示形式

      %q: 显示双引号包围的字符串

      %x: 显示十六进制编码的字符串

      type Point struct {X intY int}point := Point{1, 2}fmt.Printf("%v\n", point)fmt.Printf("%+v\n", point)fmt.Printf("%#v\n", point)}

      感谢观看,下一期内容打印与整理字符串

上一篇:怎么清服务器怪物?

下一篇:明日之后完美服务器怎么进?