Golang格式化占位符详解

Golang 格式化占位符详解

在 Golang 编程中,格式化字符串是一种常见的操作,它可以用来将不同类型的数据格式化为字符串输出。在格式化字符串时,占位符起着至关重要的作用,通过占位符可以指定数据的输出格式。本文将详细介绍 Golang 中一些常用的格式化占位符,并提供具体的代码示例供大家参考。

1. 基本的格式化占位符

在 Golang 中,常用的基本格式化占位符如下:

  • %v:默认格式
  • %+v:对结构体格式化时添加字段名
  • %#v:给值添加类型信息
  • %T:输出值的类型
  • %%:百分号

下面是一个简单的示例代码,演示了基本的格式化占位符的使用:

立即学习“go语言免费学习笔记(深入)”;

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

package main

 

import "fmt"

 

type Person struct {

    Name string

    Age  int

}

 

func main() {

    p := Person{Name: "Alice", Age: 30}

     

    fmt.Printf("Person: %+v

", p)

    fmt.Printf("Type of p: %T

", p)

}

运行上述代码,输出结果如下:

1

2

Person: {Name:Alice Age:30}

Type of p: main.Person

2. 宽度与精度

在格式化数字时,可以使用宽度(width)和精度(precision)来控制输出的格式。以下是一些常用的占位符形式:

  • %f:浮点数格式化
  • %t:布尔值格式化
  • %b:二进制格式化
  • %d:十进制格式化
  • %o:八进制格式化
  • %x:十六进制格式化

下面的示例演示了如何使用宽度和精度对浮点数进行格式化:

1

2

3

4

5

6

7

8

9

10

11

12

package main

 

import "fmt"

 

func main() {

    f := 3.14159

     

    fmt.Printf("Default format: %f

", f)

    fmt.Printf("Width and precision: %5.2f

", f)

}

运行上面的代码,输出结果如下:

1

2

Default format: 3.141590

Width and precision:  3.14

3. 字符串格式化

除了数字和结构体之外,Golang 也可以格式化字符串。以下是一些常用的字符串格式化占位符:

  • %s:字符串
  • %q:带双引号的字符串
  • %x:十六进制字符串
  • %c:字符(Unicode码点)
  • %p:指针

下面的示例展示了如何对字符串进行格式化:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

package main

 

import "fmt"

 

func main() {

    str := "Hello, 世界"

     

    fmt.Printf("String: %s

", str)

    fmt.Printf("Quoted string: %q

", str)

    fmt.Printf("Hex encoding: %x

", str)

}

运行上述代码,输出结果如下:

1

2

3

String: Hello, 世界

Quoted string: "Hello, 世界"

Hex encoding: 48656c6c6f2c20e4b896e7958c

总结

本文介绍了一些在 Golang 中常用的格式化占位符,其中包括基本的占位符、宽度与精度控制、以及字符串格式化。通过合理使用格式化占位符,可以使输出的数据更加清晰明了。读者可以根据实际需求灵活运用这些占位符,在日常的 Golang 编程工作中提高效率。

希望本文的内容对大家有所帮助,也希望读者能够在实践中更深入地了解和掌握 Golang 的格式化操作。

以上就是Golang格式化占位符详解的详细内容,更多请关注php中文网其它相关文章!

posted @ 2024-07-24 13:46  技术颜良  阅读(3)  评论(0编辑  收藏  举报