您可以使用fmt.Printf()或fmt.Sprintf()创建带有左填充零的字符串。fmt.Printf()将打印数据,同时fmt.Sprintf()允许您将结果字符串分配给变量。
这是来自文档的签名:
func Printf(format string, a ...interface{}) (n int, err error)
func Sprintf(format string, a ...interface{}) string
Run Code Online (Sandbox Code Playgroud)
例如:
// Printing directly using fmt.Printf()
fmt.Printf("%02d\n", 1)
// With output assignment
count, err := fmt.Printf("%02d\n", 1)
if err == nil {
fmt.Printf("Printed %v bytes\n", count)
} else {
fmt.Println("Error printing")
}
// Assigning to variable using fmt.Sprintf()
formatted := fmt.Sprintf("%02d", 1)
fmt.Println(formatted)
Run Code Online (Sandbox Code Playgroud)
文件:https://golang.org/pkg/fmt/
你应该看看fmt.Printf文档。它解释了所有的格式标志。您正在寻找的具体内容是0和2。0表示您想用前导零将数字填充到指定的宽度。2表示您想要的宽度,这两个标志一起将用前导 0 填充单个数字,但忽略长度为 2 位或更大的数字。
package main
import "fmt"
func main() {
for i := 1; i <= 10; i++ {
fmt.Printf("%02d\n", i)
}
}
Run Code Online (Sandbox Code Playgroud)
输出:
01
02
03
04
05
06
07
08
09
10
Run Code Online (Sandbox Code Playgroud)