Go語言fmt.Sprintf格式化輸出的語法與實(shí)例
格式化在邏輯中非常常用。使用格式化函數(shù),要注意寫法:
fmt.Sprintf(格式化樣式, 參數(shù)列表…)
- 格式化樣式:字符串形式,格式化動(dòng)詞以%開頭。
- 參數(shù)列表:多個(gè)參數(shù)以逗號(hào)分隔,個(gè)數(shù)必須與格式化樣式中的個(gè)數(shù)一一對(duì)應(yīng),否則運(yùn)行時(shí)會(huì)報(bào)錯(cuò)。
在 Go 語言中,格式化的命名延續(xù)C語言風(fēng)格:
var progress = 2 var target = 8 // 兩參數(shù)格式化 title := fmt.Sprintf("已采集%d個(gè)藥草, 還需要%d個(gè)完成任務(wù)", progress, target) fmt.Println(title) pi := 3.14159 // 按數(shù)值本身的格式輸出 variant := fmt.Sprintf("%v %v %v", "月球基地", pi, true) fmt.Println(variant) // 匿名結(jié)構(gòu)體聲明, 并賦予初值 profile := &struct { Name string HP int }{ Name: "rat", HP: 150, } fmt.Printf("使用'%%+v' %+v\n", profile) fmt.Printf("使用'%%#v' %#v\n", profile) fmt.Printf("使用'%%T' %T\n", profile)
代碼輸出如下:
已采集2個(gè)藥草, 還需要8個(gè)完成任務(wù)
“月球基地” 3.14159 true
使用’%+v’ &{Name:rat HP:150}
使用’%#v’ &struct { Name string; HP int }{Name:“rat”, HP:150}
使用’%T’ *struct { Name string; HP int }C語言中, 使用%d代表整型參數(shù)
下表中標(biāo)出了常用的一些格式化樣式中的動(dòng)詞及功能。
動(dòng) 詞 | 功 能 |
---|---|
%v | 按值的本來值輸出 |
%+v | 在 %v 基礎(chǔ)上,對(duì)結(jié)構(gòu)體字段名和值進(jìn)行展開 |
%#v | 輸出 Go 語言語法格式的值 |
%T | 輸出 Go 語言語法格式的類型和值 |
%% | 輸出 % 本體 |
%b | 整型以二進(jìn)制方式顯示 |
%o | 整型以八進(jìn)制方式顯示 |
%d | 整型以十進(jìn)制方式顯示 |
%x | 整型以十六進(jìn)制方式顯示 |
%X | 整型以十六進(jìn)制、字母大寫方式顯示 |
%U | Unicode 字符 |
%f | 浮點(diǎn)數(shù) |
%p | 指針,十六進(jìn)制方式顯示 |
總結(jié)
到此這篇關(guān)于Go語言fmt.Sprintf格式化輸出的文章就介紹到這了,更多相關(guān)Go語言fmt.Sprintf格式化輸出內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Go中RPC遠(yuǎn)程過程調(diào)用的實(shí)現(xiàn)
本文主要介紹了Go中RPC遠(yuǎn)程過程調(diào)用的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-07-07wind10 idea中 go 開發(fā)環(huán)境搭建教程圖解
這篇文章主要介紹了wind10 idea中 go 開發(fā)環(huán)境搭建過程,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-06-06深入理解Golang?make和new的區(qū)別及實(shí)現(xiàn)原理
在Go語言中,有兩個(gè)比較雷同的內(nèi)置函數(shù),分別是new和make方法,二者都可以用來分配內(nèi)存,那他們有什么區(qū)別呢?下面我們就從底層來分析一下二者的不同。感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助2022-10-10go運(yùn)算符對(duì)變量和值執(zhí)行操作示例詳解
這篇文章主要為大家介紹了go運(yùn)算符對(duì)變量和值執(zhí)行操作示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-09-09Go中Goroutines輕量級(jí)并發(fā)的特性及效率探究
這篇文章主要為大家介紹了Go中Goroutines輕量級(jí)并發(fā)的特性及效率探究,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-12-12Go語言處理超大字符串型整數(shù)加減經(jīng)典面試詳解
這篇文章主要為大家介紹了Go語言處理超大字符串型整數(shù)加減經(jīng)典面試示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-10-10Go文件操作(新建打開寫入讀取刪除關(guān)閉)學(xué)習(xí)筆記
這篇文章主要為大家介紹了Go文件操作(新建打開寫入讀取刪除關(guān)閉)學(xué)習(xí)筆記,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2024-01-01