Go語言格式化動詞使用詳解
更新時間:2023年08月29日 08:39:44 作者:小萬哥丶
這篇文章主要介紹了Go語言格式化動詞使用詳解的相關資料,需要的朋友可以參考下
Printf() 函數可以使用多種格式化動詞對輸出進行格式化。下面是可以與所有數據類型一起使用的一些通用格式化動詞:
通用格式化動詞:以下動詞適用于所有數據類型:
| 動詞 | 描述 |
|---|---|
%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)
}結果:
15.5 15.5 15.5% float64 Hello World! "Hello World!" string
整數格式化動詞
以下動詞適用于整數數據類型:
| 動詞 | 描述 |
|---|---|
%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)
}結果:
1111 15 +15 17 0o17 f F 0xf 15 15 0015
字符串格式化動詞
以下動詞適用于字符串數據類型:
| 動詞 | 描述 |
|---|---|
%s | 普通字符串打印 |
%q | 雙引號包裹的字符串打印 |
%8s | 普通字符串打?。▽挾?8,右對齊) |
%-8s | 普通字符串打?。▽挾?8,左對齊) |
%x | 字節(jié)值的十六進制轉儲 |
% x | 帶空格的十六進制轉儲 |
示例:
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)
}結果:
Hello "Hello" Hello Hello 48656c6c6f 48 65 6c 6c 6f
布爾格式化動詞
以下動詞適用于布爾數據類型:
| 動詞 | 描述 |
|---|---|
%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)
}結果:
true false
浮點數格式化動詞
以下動詞適用于浮點數數據類型:
| 動詞 | 描述 |
|---|---|
%e | 科學計數法,指數為 'e' |
%f | 小數點,無指數部分 |
%.2f | 默認寬度,精度為 2 |
%6.2f | 寬度 6,精度 2 |
%g | 必要時使用指數,僅保留必要的位數 |
示例:
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)
}結果:
3.141000e+00 3.141000 3.14 3.14 3.141
請注意,這個翻譯可能不是完美的,因為語言之間的表達方式可能有細微的差異。
到此這篇關于Go語言格式化動詞使用詳解的文章就介紹到這了,更多相關Go 格式化動詞內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Go語言net包RPC遠程調用三種方式http與json-rpc及tcp
這篇文章主要為大家介紹了Go語言net包RPC遠程調用三種方式分別使用http與json-rpc及tcp的示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助2021-11-11

