Go中的格式化字符串fmt.Sprintf()和fmt.Printf()使用示例
Go格式化字符串函數(shù)
在 Go 中,可以使用 fmt.Sprintf()
和 fmt.Printf()
函數(shù)來格式化字符串,這兩個(gè)函數(shù)類似于 C 語言中的 scanf
和 printf
函數(shù)。
fmt.Sprintf()
fmt.Sprintf()
函數(shù)返回一個(gè)格式化后的字符串,而不是將其打印到標(biāo)準(zhǔn)輸出流中。下面是一個(gè)例子:
package main import "fmt" func main() { name := "Mazey" age := 24 str := fmt.Sprintf("My name is %s and I'm %d years old.", name, age) fmt.Println(str) }
輸出:
My name is Mazey and I'm 24 years old.
在這個(gè)例子中,使用了 %s
和 %d
格式化動(dòng)詞來格式化字符串。s
用于字符串,d
用于整數(shù)。
fmt.Printf()
fmt.Printf()
函數(shù)將格式化后的字符串打印到標(biāo)準(zhǔn)輸出流中。下面是一個(gè)例子:
package main import "fmt" func main() { name := "Mazey" age := 24 fmt.Printf("My name is %s and I'm %d years old.", name, age) }
輸出:
My name is Mazey and I'm 24 years old.
在這個(gè)例子中,使用了 %s
和 %d
格式化動(dòng)詞來打印格式化字符串。s
用于字符串,d
用于整數(shù)。
格式化動(dòng)詞 Verbs
在 Go 中,可以使用不同的格式化動(dòng)詞來格式化不同類型的數(shù)據(jù)。下面是五個(gè)最常用的格式化動(dòng)詞:
%s
:用于字符串%t
:用于布爾值%d
:用于有符號(hào)十進(jìn)制整數(shù)%f
:用于浮點(diǎn)數(shù)%v
:用于任何值
參數(shù)索引 Argument Indexes
如果想要在格式化字符串中引用相同類型的多個(gè)參數(shù),可以使用參數(shù)索引。例如:
package main import "fmt" func main() { fmt.Printf("%[2]d %[1]d", 2, 3) }
輸出:
3 2
在這個(gè)例子中,使用了參數(shù)索引來交換 %d
格式化動(dòng)詞引用的參數(shù)順序。
總結(jié)
在 Go 中,可以使用 fmt.Sprintf()
和 fmt.Printf()
函數(shù)來格式化字符串。本文介紹了五個(gè)最常用的格式化動(dòng)詞和參數(shù)索引的使用方法。
以上就是Go中的格式化字符串fmt.Sprintf()和fmt.Printf()使用示例的詳細(xì)內(nèi)容,更多關(guān)于Go格式化字符串的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
prometheus?client_go為應(yīng)用程序自定義監(jiān)控指標(biāo)
這篇文章主要為大家介紹了prometheus?client_go為應(yīng)用程序自定義監(jiān)控指標(biāo)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-02-02Go 實(shí)現(xiàn)基于Token 的登錄流程深度分析
Token 認(rèn)證機(jī)制的核心思想是,服務(wù)端在用戶登錄時(shí)生成一個(gè) Token,客戶端在后續(xù)的請(qǐng)求中攜帶這個(gè) Token,服務(wù)端通過驗(yàn)證 Token 的有效性來確認(rèn)用戶的身份,本文將帶你深入探索基于 Token 的登錄流程,這是一種更為靈活且適用于現(xiàn)代應(yīng)用架構(gòu)的認(rèn)證方式2024-03-03談?wù)揋o 什么時(shí)候會(huì)觸發(fā) GC問題
Go 語言作為一門新語言,在早期經(jīng)常遭到唾棄的就是在垃圾回收(下稱:GC)機(jī)制中 STW(Stop-The-World)的時(shí)間過長(zhǎng)。下面文章就對(duì)此話題展開,感興趣的小伙伴可以參考下面文章的內(nèi)容2021-09-09如何使用?Go?和?Excelize?構(gòu)建電子表格
這篇文章主要介紹了如何使用Go和Excelize構(gòu)建電子表格,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-09-09GO項(xiàng)目部署Linux服務(wù)器的實(shí)現(xiàn)示例
本文主要介紹了GO項(xiàng)目部署Linux服務(wù)器的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-06-06go打包aar及flutter調(diào)用aar流程詳解
這篇文章主要為大家介紹了go打包aar及flutter調(diào)用aar流程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-03-03Go語言規(guī)范context?類型的key用法示例解析
這篇文章主要為大家介紹了Go語言規(guī)范context?類型的key用法示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-08-08golang高并發(fā)系統(tǒng)限流策略漏桶和令牌桶算法源碼剖析
這篇文章主要介紹了golang高并發(fā)系統(tǒng)限流策略漏桶和令牌桶算法源碼剖析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06