Go語言格式化動詞使用詳解
Printf() 函數(shù)可以使用多種格式化動詞對輸出進行格式化。下面是可以與所有數(shù)據(jù)類型一起使用的一些通用格式化動詞:
通用格式化動詞:以下動詞適用于所有數(shù)據(jù)類型:
動詞 | 描述 |
---|---|
%v | 以默認格式打印值 |
%#v | 以 Go 語法格式打印值 |
%T | 打印值的類型 |
%% | 打印百分號 |
示例:
package main import ( "fmt" ) func main() { var i = 15.5 var txt = "Hello World!" fmt.Printf("%v\n", i) fmt.Printf("%#v\n", i) fmt.Printf("%v%%\n", i) fmt.Printf("%T\n", i) fmt.Printf("%v\n", txt) fmt.Printf("%#v\n", txt) fmt.Printf("%T\n", txt) }
結(jié)果:
15.5 15.5 15.5% float64 Hello World! "Hello World!" string
整數(shù)格式化動詞
以下動詞適用于整數(shù)數(shù)據(jù)類型:
動詞 | 描述 |
---|---|
%b | 二進制 |
%d | 十進制 |
%+d | 帶符號的十進制 |
%o | 八進制 |
%O | 八進制(帶 0o 前綴) |
%x | 十六進制(小寫) |
%X | 十六進制(大寫) |
%#x | 帶 0x 前綴的十六進制 |
%4d | 使用空格填充(寬度 4,右對齊) |
%-4d | 使用空格填充(寬度 4,左對齊) |
%04d | 使用零填充(寬度 4) |
示例:
package main import ( "fmt" ) func main() { var i = 15 fmt.Printf("%b\n", i) fmt.Printf("%d\n", i) fmt.Printf("%+d\n", i) fmt.Printf("%o\n", i) fmt.Printf("%O\n", i) fmt.Printf("%x\n", i) fmt.Printf("%X\n", i) fmt.Printf("%#x\n", i) fmt.Printf("%4d\n", i) fmt.Printf("%-4d\n", i) fmt.Printf("%04d\n", i) }
結(jié)果:
1111 15 +15 17 0o17 f F 0xf 15 15 0015
字符串格式化動詞
以下動詞適用于字符串數(shù)據(jù)類型:
動詞 | 描述 |
---|---|
%s | 普通字符串打印 |
%q | 雙引號包裹的字符串打印 |
%8s | 普通字符串打?。▽挾?8,右對齊) |
%-8s | 普通字符串打?。▽挾?8,左對齊) |
%x | 字節(jié)值的十六進制轉(zhuǎn)儲 |
% x | 帶空格的十六進制轉(zhuǎn)儲 |
示例:
package main import ( "fmt" ) func main() { var txt = "Hello" fmt.Printf("%s\n", txt) fmt.Printf("%q\n", txt) fmt.Printf("%8s\n", txt) fmt.Printf("%-8s\n", txt) fmt.Printf("%x\n", txt) fmt.Printf("% x\n", txt) }
結(jié)果:
Hello "Hello" Hello Hello 48656c6c6f 48 65 6c 6c 6f
布爾格式化動詞
以下動詞適用于布爾數(shù)據(jù)類型:
動詞 | 描述 |
---|---|
%t | 布爾運算符的 true 或 false 格式(與 %v 相同) |
示例:
package main import ( "fmt" ) func main() { var i = true var j = false fmt.Printf("%t\n", i) fmt.Printf("%t\n", j) }
結(jié)果:
true false
浮點數(shù)格式化動詞
以下動詞適用于浮點數(shù)數(shù)據(jù)類型:
動詞 | 描述 |
---|---|
%e | 科學計數(shù)法,指數(shù)為 'e' |
%f | 小數(shù)點,無指數(shù)部分 |
%.2f | 默認寬度,精度為 2 |
%6.2f | 寬度 6,精度 2 |
%g | 必要時使用指數(shù),僅保留必要的位數(shù) |
示例:
package main import ( "fmt" ) func main() { var i = 3.141 fmt.Printf("%e\n", i) fmt.Printf("%f\n", i) fmt.Printf("%.2f\n", i) fmt.Printf("%6.2f\n", i) fmt.Printf("%g\n", i) }
結(jié)果:
3.141000e+00 3.141000 3.14 3.14 3.141
請注意,這個翻譯可能不是完美的,因為語言之間的表達方式可能有細微的差異。
到此這篇關(guān)于Go語言格式化動詞使用詳解的文章就介紹到這了,更多相關(guān)Go 格式化動詞內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
golang實現(xiàn)一個簡單的websocket聊天室功能
這篇文章主要介紹了golang實現(xiàn)一個簡單的websocket聊天室功能,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-10-10一文帶你輕松學會Go語言動態(tài)調(diào)用函數(shù)
這篇文章主要是帶大家學習一下Go語言是如何動態(tài)調(diào)用函數(shù)的,文中的示例代碼講解詳細,對我們學習Go語言有一定的幫助,需要的可以參考下2022-11-11golang并發(fā)編程使用Select語句的實現(xiàn)
Go語言中的select語句是并發(fā)編程中的重要工具,允許Goroutine等待多個通道操作,它阻塞直至任一case可執(zhí)行,可用于接收數(shù)據(jù)、實現(xiàn)超時機制和非阻塞通道操作,感興趣的可以了解一下2024-10-10一文教你如何快速學會Go的struct數(shù)據(jù)類型
結(jié)構(gòu)是表示字段集合的用戶定義類型。它可以用于將數(shù)據(jù)分組為單個單元而不是將每個數(shù)據(jù)作為單獨的值的地方。本文就來和大家聊聊Go中struct數(shù)據(jù)類型的使用,需要的可以參考一下2023-03-03Go語言net包RPC遠程調(diào)用三種方式http與json-rpc及tcp
這篇文章主要為大家介紹了Go語言net包RPC遠程調(diào)用三種方式分別使用http與json-rpc及tcp的示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助2021-11-11