golangfmt百分号

概述

golang这门语言中,fmt包是一个非常常用的包。它提供了格式化输入输出的函数,可以很方便地操作输出格式内的文本。fmt包中最常使用的格式化字符串方法是Printf()和Sprintf()函数。其中,输出格式控制字符串通常采用百分号(%)作为开始符号。

使用百分号进行格式化

百分号(%)是格式化字符串的关键符号。在使用Printf()等函数时,我们可以在输出格式控制字符串中使用百分号作为占位符。当占位符预留的位置接收到实参时,实参会根据占位符的类型和格式,以对应格式的方式进行输出。例如,%d占位符对应的是整数类型,%f对应的是浮点型,%s对应的是字符串类型。以下是一些常用的占位符及其类型。

  • %v:值的默认格式。
  • %+v:类似%v,但输出结构体时会添加属性名。
  • %#v:值的Go语法表示。
  • %T:值的类型的Go语言表示。
  • %t:值的bool类型的默认值。
  • %d:十进制整数。
  • %o:八进制数。
  • %x:十六进制数,小写字母。
  • %X:十六进制数,大写字母。
  • %q:双引号引起来的字符串值,由Go语法安全地转义。
  • %s:字符串或者[]byte。
  • %p:指针值。
  • %e:科学计数法表示的浮点数,小写字母e。
  • %E:科学计数法表示的浮点数,大写字母E。
  • %f:有小数点而无指数,例如123.456。
  • %g:根据实际情况,采用%e或%f格式,以产生更紧凑的(无末尾的0)输出。
  • %G:根据实际情况,采用%E或%f格式,以产生更紧凑的(无末尾的0)输出。

使用百分号进行填充和对齐

在格式化字符串中,我们还可以使用百分号(%)对输出视图进行对齐和填充。对于一个格式化项,可以在%符号后面添加一些标志来改变其行为。其中最常用的两个标志是“+”和“-”。当使用“-”标志时,将从左侧对齐输出;当使用“+”标志时,则向右侧填充值。以下是一些常用标志及其解释。

  • -:在文本宽度内从左对齐该值。
  • +:在文本宽度内右对齐该值,可以使用该标志填充数字。
  • ' '(空格):(空格)代表一个填充,在文本宽度内向右对齐。
  • '0':数字的填充字符,等价于使用0作为填充字符,只对数字格式化项使用。
  • 宽度:最小字段宽度,如果变量不够宽,则用空格填充。如果变量足够宽,将按原样输出。
  • 精度:对于浮点输出,精度控制小数点后的位数;对于字符串输出,控制输出的最大字符数。

例如,下面的代码演示了如何使用百分号(%)使输出对齐:

```
package main

import "fmt"

func main() {
s := "Hello, World!"
fmt.Printf("|%20s|\n", s)
fmt.Printf("|%-20s|\n", s)
fmt.Printf("|%20.5s|\n", s)
fmt.Printf("|%-20.5s|\n", s)
}
```

该程序输出如下结果:

```
| Hello, World!|
|Hello, World! |
| Hello,|
|Hello |
```

我们可以看到,该程序在输出字符串时使用了多个不同的对齐和填充标志,从而使输出格式更加清晰和优雅。

本文来自投稿,不代表亲测学习网立场,如若转载,请注明出处:https://www.qince.net/golang-jod.html

郑重声明:

本站所有内容均由互联网收集整理、网友上传,并且以计算机技术研究交流为目的,仅供大家参考、学习,不存在任何商业目的与商业用途。 若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。

我们不承担任何技术及版权问题,且不对任何资源负法律责任。

如遇到资源无法下载,请点击这里失效报错。失效报错提交后记得查看你的留言信息,24小时之内反馈信息。

如有侵犯您的版权,请给我们私信,我们会尽快处理,并诚恳的向你道歉!

(0)
上一篇 2023年5月2日 上午2:34
下一篇 2023年5月2日 上午2:35

猜你喜欢