Go开发新手需知:Printf、Sprintf、Println 的区别
Printf:
只可以打印出格式化的字符串,可以输出字符串类型的变量,不可以输出整形变量和整形
如代码
//Printf func main(){ var i=1007 var f=11.50 var s="Go + Python" fmt.Printf("%v %v %q",i,f,s) }
效果图
Sprintf:
用传入的格式化规则符将传入的变量格式化,(终端中不会有显示),返回为 格式化后的字符串
如代码
package main import( "fmt" ) //Sprintf func main(){ testStr := []byte("test str") fmt.Println(testStr, "hello world") //[116 101 115 116 32 115 116 114] hello world fmt.Printf("%s", testStr) //test str fmt.Println() fmt.Sprintf("%s", testStr) //空,无IO输出 fmt.Println() printStr := fmt.Sprintf("%s", testStr) fmt.Println(printStr) }
效果图
Printfln:
可以打印出字符串,和变量
如代码
package main import( "fmt" ) //Println func main(){ var ints=123 var chars="2021-4-19" var url="ints=%d chars=%s" var print=fmt.Sprintf(url,ints,chars,"6636asd") fmt.Println(print) }
效果图