一.幾種公共方法
1)Print:???輸出到控制臺(tái)(不接受任何格式化碰逸,它等價(jià)于對(duì)每一個(gè)操作數(shù)都應(yīng)用?%v)
print 在golang中?是屬于輸出到標(biāo)準(zhǔn)錯(cuò)誤流中并打印,官方不建議寫程序時(shí)候用它∝孕澹可以再debug時(shí)候用
fmt.Print(str)
2)Println:?輸出到控制臺(tái)并換行
fmt.Println(tmp)?
3)Printf :?只可以打印出格式化的字符串姑荷。只可以直接輸出字符串類型的變量(不可以輸出整形變量和整形等)
fmt.Printf("%d",a)?
4)Sprintf:格式化并返回一個(gè)字符串而不帶任何輸出
s?:= fmt.Sprintf("a %s",?"string") fmt.Printf(s)?
5)Fprintf:來格式化并輸出到 io.Writers 而不是 os.Stdout
fmt.Fprintf(os.Stderr,?“an %s\n”,?“error”)?
二.帶占位符輸出--網(wǎng)址:? ??http://www.reibang.com/p/8be8d36e779c
和python差不多的道理盒延,這里簡單補(bǔ)充
v ????值的默認(rèn)格式
%+v???添加字段名(如結(jié)構(gòu)體)
%#v ?相應(yīng)值的Go語法表示?
%T????相應(yīng)值的類型的Go語法表示?
%%????字面上的百分號(hào),并非值的占位符
%c?????相應(yīng)Unicode碼點(diǎn)所表示的字符?
%x?????十六進(jìn)制表示厢拭,字母形式為小寫 a-f
%X?????十六進(jìn)制表示兰英,字母形式為大寫 A-F
%U???? Unicode格式:U+1234撇叁,等同于?"U+%04X"
type point struct {
a, b int
}
func main() {
???? p := point{1, 2}
???? fmt.Printf("%v\n", p)? 輸出: {1 2}
?? //如果值是一個(gè)結(jié)構(gòu)體供鸠,%+v 的格式化輸出內(nèi)容將包括結(jié)構(gòu)體的字段名。
???? fmt.Printf("%+v\n", p) 輸出: {x:1 y:2}
? ? //%#v 形式則輸出這個(gè)值的 Go 語法表示陨闹。例如楞捂,值的運(yùn)行源代碼片段。
????? fmt.Printf("%#v\n", p)?輸出: main.point{x:1, y:2}
??? //需要打印值的類型趋厉,使用 %T寨闹。
????? fmt.Printf("%T\n", p) 輸出: main.point
??? //格式化布爾值是簡單的。
????? fmt.Printf("%t\n", true) 輸出: true
}