golang fmt.Printf 格式化长度显示
时间: 2023-06-25 22:04:51 浏览: 63
在 Go 中,可以使用 fmt.Printf 函数来格式化字符串并输出到控制台。要在格式化字符串中指定字段宽度,可以使用 %Nd 的格式,其中 N 是要显示的最小字段宽度,例如:
```
package main
import "fmt"
func main() {
s := "hello"
fmt.Printf("'%5s'", s) // 输出:' hello'
}
```
在上面的示例中,%5s 表示将字符串 s 格式化为长度为 5 的字符串,如果 s 的长度小于 5,则在左侧用空格填充。
相关问题
golang fmt.Printf 格式化指定宽度 右侧空格填充
在 Golang 的 fmt 包中,可以使用 %指定宽度来格式化字符串。要在右侧用空格填充,可以使用 %指定宽度后再加上一个字符表示填充的方式,例如空格符号。
示例代码如下:
```
package main
import "fmt"
func main() {
s := "hello"
fmt.Printf("%-10s world\n", s)
}
```
输出结果如下:
```
hello world
```
在 %后面加上一个 - 符号表示左对齐,不加则表示右对齐。在指定宽度后,可以使用 0 表示要用 0 填充,使用空格表示要用空格填充。默认情况下,会用空格填充。
GO sql= fmt.Fprintf("AND label LIKE %s", startT )
这段代码看起来是 Golang 语言中的代码,和 Python 语言中的字符串格式化操作略有不同。在 Golang 中,也可以使用 fmt.Printf()、fmt.Sprintf() 等函数来进行字符串格式化操作,但是占位符和格式化指令都略有不同。
在这段代码中,%s 仍然是一个占位符,表示将要替换成一个字符串类型的值。startT 则是一个变量名,表示要替换成的实际值。因此,这段代码的作用是将字符串 "AND label LIKE %s" 中的 %s 替换成 startT 的值,并将结果赋值给变量 sql。具体的实现方式是使用 fmt.Fprintf() 函数来进行字符串格式化操作,代码如下:
```go
var buf bytes.Buffer
fmt.Fprintf(&buf, "AND label LIKE %s", startT)
sql := buf.String()
```
在这里,我们使用了一个 bytes.Buffer 对象来缓存格式化后的字符串。然后,我们调用 fmt.Fprintf() 函数来将 "AND label LIKE %s" 和 startT 进行字符串格式化操作,并将结果输出到 buf 中。最后,我们调用 buf.String() 方法来获取 buf 中的字符串内容,并将其赋值给 sql 变量。这样,我们就得到了一个安全的 SQL 查询语句,避免了 SQL 注入攻击的风险。