我来自JS的土地,主要使用console.log
或console.error
现在,我正在遵循的教程,那边的讲师做了这样的事情
package main
import "fmt"
func main() {
var FirstName = "Varun"
var lastName = "bindal"
fmt.Println(FirstName, lastName)
fmt.Printf("%T", FirstName)
}
在这里,他做了PrintF来检查类型而不是Println。最初,我认为println在新行中打印,所以我改变了我的
fmt.Printf("%T", FirstName)
自
fmt.Println("%T", FirstName)
但这记录了%T Varun
而不是告诉我类型。
我去了他们的网站弄清楚,要么无法理解它,要么无法找到它。
谷歌搜索让我知道有三种方法可以在 Go 中登录/打印
- Println
- 普瑞夫
- 打印
那么,如果有人打电话告诉他们三个之间的区别?
Printf
- "打印格式化程序" 此功能允许您格式化 数字、变量和字符串放入第一个字符串参数中 给我Print
- "打印" 这不能格式化任何东西,它只是 取一个字符串并打印出来Println
- "打印行"与Print()
相同,但它会 在末尾附加换行符n
。
正如 Nate 所说:fmt.Print
和fmt.Println
打印原始字符串(fmt.Println
附加换行符)
fmt.Printf
不会打印新行,您必须自己将其添加到末尾n
.
fmt.Printf
的工作方式很简单,您提供一个包含某些符号的字符串,其他参数将替换这些符号。例如:
fmt.Printf("%s is cool", "Bob")
在本例中,%s
表示一个字符串。在您的情况下,%T
打印变量的类型。
要回答您的问题,
fmt.Print
n
和"就像fmt.Println
。
fmt.Printf
n
和%v
就像fmt.Println
.
如本例所示:
package main
import "fmt"
func main() {
const name, age = "Kim", 22
//
fmt.Print(name, " is ", age, " years old.n") // Kim is 22 years old.
fmt.Printf("%v is %v years old.n", name, age) // Kim is 22 years old.
fmt.Println(name, "is", age, "years old.") // Kim is 22 years old.
//
print(name, " is ", age, " years old.n") // Kim is 22 years old.
println(name, "is", age, "years old.") // Kim is 22 years old.
}
print
和println
就像fmt.Print
一样,fmt.Println
有资质。请参阅 https://stackoverflow.com/a/48420811/12817546 和 https://stackoverflow.com/a/14680544/12817546。
Go 提供了许多其他格式化 I/O 的方法。请参阅 https://golang.org/pkg/fmt。
fmt.Println("值的圆周率:",数学。圆周率)
FMT.printf("值的 Pi : %g", math.圆周率)
期望//
Pi 值 : 3.141592653589793
Pi 值 : 3.141592653589793