日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

Go语言fmt.Printf使用指南(占位符总结)

發(fā)布時(shí)間:2024/10/12 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Go语言fmt.Printf使用指南(占位符总结) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

本文整理了Go語(yǔ)言的標(biāo)準(zhǔn)輸出流(fmt.Printf)在打印到屏幕時(shí)的格式化輸出操作。

在這里按照占位符將被替換的變量類型劃分,更方便查詢和記憶。

總結(jié)

1.1 General(通用占位符)

占位符說明
%v以默認(rèn)的方式打印變量的值(萬(wàn)能占位符,如果不知道變量是什么類型,用%v即可,go語(yǔ)言會(huì)自動(dòng)為你識(shí)別)
%T打印變量的類型
%%字面上的百分號(hào),并非值的占位符

補(bǔ)充:

%v:默認(rèn)格式的值。當(dāng)打印結(jié)構(gòu)時(shí),加號(hào)(%+v)會(huì)增加字段名;
%#v:Go 樣式的值表達(dá);

示例:

package mainimport "fmt"func main() {var (a = 100b = "henry")// %v俗稱占位符fmt.Printf("a=%v\n", a)// %T 打印類型fmt.Printf("b的類型是%T\n", b)// %%轉(zhuǎn)義fmt.Printf("%d%%\n", a) }

執(zhí)行結(jié)果:

1.2 Integer(整型)

占位符說明
%+d帶符號(hào)的整型
%q打印單引號(hào)
%o不帶零的八進(jìn)制
%#o帶零的八進(jìn)制
%x小寫的十六進(jìn)制
%X大寫的十六進(jìn)制
%#x帶0x的十六進(jìn)制
%U打印Unicode字符
%#U打印帶字符的Unicode
%b打印整型的二進(jìn)制

1.3 Integer width(指定長(zhǎng)度的整型,以5為例)

占位符說明
%5d整型長(zhǎng)度為5,右對(duì)齊,左邊留白
%-5d左對(duì)齊右邊留白
%05d數(shù)字前面補(bǔ)零

示例:

package mainimport "fmt"func main() {var (a = 100)fmt.Printf("|%d|\n", a)fmt.Printf("|%8d|\n", a)fmt.Printf("|%-8d|\n", a)fmt.Printf("|%08d|\n", a) }

執(zhí)行結(jié)果:

1.4 Float(浮點(diǎn)數(shù))

占位符說明
%f(=%.6f) 6位小數(shù)點(diǎn)
%e(=%.6e) 6位小數(shù)點(diǎn)(科學(xué)計(jì)數(shù)法)
%g用最少的數(shù)字來表示
%.3g最多3位數(shù)字來表示
%.3f最多3位小數(shù)來表示

示例:

package mainimport "fmt"func main() {f1 := 3.141592654fmt.Printf("%.2f\n", f1) //最多2位小數(shù)表示fmt.Printf("%.2g\n", f1) //最多用2位數(shù)字表示 }

執(zhí)行結(jié)果:

1.5 String(字符串)

占位符說明
%s正常輸出字符串
%q字符串帶雙引號(hào),字符串中的引號(hào)帶轉(zhuǎn)義符
%#q字符串帶反引號(hào),如果字符串內(nèi)有反引號(hào),就用雙引號(hào)代替
%x將字符串轉(zhuǎn)換為小寫的16進(jìn)制格式
%X將字符串轉(zhuǎn)換為大寫的16進(jìn)制格式
% x帶空格的16進(jìn)制格式

示例:

package mainimport "fmt"func main() {s1 := "這是一個(gè)字符串\""fmt.Printf("s1:%s\n", s1) // %s 正常輸出字符串fmt.Printf("s1:%q\n", s1) // %q 字符串帶雙引號(hào),字符串中的引號(hào)帶轉(zhuǎn)義符 }

執(zhí)行結(jié)果:

1.6 String Width (指定長(zhǎng)度的字符串,以5為例)

占位符說明
%5s最小寬度為5
%-5s最小寬度為5(左對(duì)齊)
%.5s最大寬度為5
%5.7s最小寬度為5,最大寬度為7
%-5.7s最小寬度為5,最大寬度為7(左對(duì)齊)
%5.3s如果寬度大于3,則截?cái)?/td>
%05s如果寬度小于5,就會(huì)在字符串前面補(bǔ)零

代碼示例:

package mainimport "fmt"func main() {s1 := "這是一個(gè)字符串\""fmt.Printf("s1:%20s\n", s1) //字符串最小寬度為20fmt.Printf("s1:%.5s\n", s1) //字符串最大寬度為5 }

執(zhí)行結(jié)果:

1.7 Struct(結(jié)構(gòu)體)

占位符說明
%v以默認(rèn)的方式打印變量的值
%+v在打印結(jié)構(gòu)體時(shí),會(huì)添加字段名
%#v在打印結(jié)構(gòu)體時(shí),會(huì)添加字段名和包名

1.8 Boolean(布爾值)

占位符說明
%t打印true或false

1.9 Pointer(指針)

占位符說明
%p帶0x的指針(指針值帶有0x的十六進(jìn)制前綴)
%#p不帶0x的指針

轉(zhuǎn)載于:https://www.cnblogs.com/forever521Lee/p/10700549.html

總結(jié)

以上是生活随笔為你收集整理的Go语言fmt.Printf使用指南(占位符总结)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。