共計(jì) 1996 個(gè)字符,預(yù)計(jì)需要花費(fèi) 5 分鐘才能閱讀完成。
這篇文章主要介紹“Go 語言字符串怎么格式化”,在日常操作中,相信很多人在 Go 語言字符串怎么格式化問題上存在疑惑,丸趣 TV 小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Go 語言字符串怎么格式化”的疑惑有所幫助!接下來,請跟著丸趣 TV 小編一起來學(xué)習(xí)吧!
Go 對字符串格式化提供了良好的支持。下面我們看些常用的字符串格式化的例子。
package mainimport fmt import os type point struct { x, y int}func main() { // Go 提供了幾種打印格式,用來格式化一般的 Go 值,例如 // 下面的 %v 打印了一個(gè) point 結(jié)構(gòu)體的對象的值 p := point{1, 2} fmt.Printf(%v\n , p) // 如果所格式化的值是一個(gè)結(jié)構(gòu)體對象,那么 `%+v` 的格式化輸出 // 將包括結(jié)構(gòu)體的成員名稱和值 fmt.Printf(%+v\n , p) // `%#v` 格式化輸出將輸出一個(gè)值的 Go 語法表示方式。 fmt.Printf(%#v\n , p) // 使用 `%T` 來輸出一個(gè)值的數(shù)據(jù)類型 fmt.Printf(%T\n , p) // 格式化布爾型變量 fmt.Printf(%t\n , true) // 有很多的方式可以格式化整型,使用 `%d` 是一種 // 標(biāo)準(zhǔn)的以 10 進(jìn)制來輸出整型的方式 fmt.Printf(%d\n , 123) // 這種方式輸出整型的二進(jìn)制表示方式 fmt.Printf(%b\n , 14) // 這里打印出該整型數(shù)值所對應(yīng)的字符 fmt.Printf(%c\n , 33) // 使用 `%x` 輸出一個(gè)值的 16 進(jìn)制表示方式 fmt.Printf(%x\n , 456) // 浮點(diǎn)型數(shù)值也有幾種格式化方法。最基本的一種是 `%f` fmt.Printf(%f\n , 78.9) // `%e` 和 `%E` 使用科學(xué)計(jì)數(shù)法來輸出整型 fmt.Printf(%e\n , 123400000.0) fmt.Printf(%E\n , 123400000.0) // 使用 `%s` 輸出基本的字符串 fmt.Printf(%s\n , \ string\) // 輸出像 Go 源碼中那樣帶雙引號的字符串,需使用 `%q` fmt.Printf(%q\n , \ string\) // `%x` 以 16 進(jìn)制輸出字符串,每個(gè)字符串的字節(jié)用兩個(gè)字符輸出 fmt.Printf(%x\n , hex this) // 使用 `%p` 輸出一個(gè)指針的值 fmt.Printf(%p\n , p) // 當(dāng)輸出數(shù)字的時(shí)候,經(jīng)常需要去控制輸出的寬度和精度。 // 可以使用一個(gè)位于 % 后面的數(shù)字來控制輸出的寬度,默認(rèn) // 情況下輸出是右對齊的,左邊加上空格 fmt.Printf(|%6d|%6d|\n , 12, 345) // 你也可以指定浮點(diǎn)數(shù)的輸出寬度,同時(shí)你還可以指定浮點(diǎn)數(shù) // 的輸出精度 fmt.Printf(|%6.2f|%6.2f|\n , 1.2, 3.45) // To left-justify, use the `-` flag. fmt.Printf(|%-6.2f|%-6.2f|\n , 1.2, 3.45) // 你也可以指定輸出字符串的寬度來保證它們輸出對齊。默認(rèn) // 情況下,輸出是右對齊的 fmt.Printf(|%6s|%6s|\n , foo , b) // 為了使用左對齊你可以在寬度之前加上 `-` 號 fmt.Printf(|%-6s|%-6s|\n , foo , b) // `Printf` 函數(shù)的輸出是輸出到命令行 `os.Stdout` 的,你 // 可以用 `Sprintf` 來將格式化后的字符串賦值給一個(gè)變量 s := fmt.Sprintf(a %s , string) fmt.Println(s) // 你也可以使用 `Fprintf` 來將格式化后的值輸出到 `io.Writers` fmt.Fprintf(os.Stderr, an %s\n , error)}
運(yùn)行結(jié)果
{1 2}{x:1 y:2}main.point{x:1, y:2}main.pointtrue1231110!1c878.9000001.234000e+081.234000E+08 string \ string\ 68657820746869730xc000092000| 12| 345|| 1.20| 3.45||1.20 |3.45 || foo| b||foo |b |a stringan error
到此,關(guān)于“Go 語言字符串怎么格式化”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注丸趣 TV 網(wǎng)站,丸趣 TV 小編會繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!
正文完