Go 语言 fmt.Sprintf (格式化输出)

格式化在逻辑中非常重要,使用格式化函数,要注意写法:

fmt.Sprintf(格式化样式,参数列表...)
  • 格式化样式:
    •   字符串形式,格式化动词以 % 开头
  •   参数类表:
    •   多个参数以逗号分隔,个数必须与格式化样式中的个数一一对应,否则运行时会报错。
        • var progress = 2
          var target = 8
          
          // 两参数格式化
          title := fmt.Sprintf("已采集 %d 个药草,还需要 %d 个完成任务", progress, target)
          
          fmt.Println(title)

          pi := 3.1415926
          // 按数值本身格式输出
          variant := fmt.Sprintf("%v %v %v", "月球基地", pi, true)

          fmt.Println(variant)

          // 匿名结构体声明,并赋予初值
          profile := &struct{
            Name string
            HP int

          }{
            Name: "rat",
            HP : 150,
          }


          fmt.Printf("使用 ‘%%+v’ %+v\n", profile)
          fmt.Printf("使用 ‘%%#v’ %#v\n", profile)
          fmt.Printf("使用 ‘%%T’ %T\n", profile)

下表标出了常用的一些格式化样式中的动词及功能。

                  动词                                                  功能                              
                   %v    按值的本来值输出
      %+v    在 %v 的基础上,对结构体字段名和值进行展开       
      %#v     输出 Go 语言语法格式的值
      %T   输出 Go 语言语法格式的类型和值
      %%      输出 %% 本体
      %b     整型以二进制方式显示
      %o     整型以八进制方式显示
      %d     整型以十进制方式显示
      %x     整型以 十六进制显示
      %X     整型以十六进制、字母大写方式显示
      %U      Unicode 字符
      %f      浮点数
      %p      指针,十六进制方式显示

猜你喜欢

转载自www.cnblogs.com/jcjc/p/12290915.html
今日推荐