Println vs Printf vs Print in Go



我来自JS的土地,主要使用console.logconsole.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 中登录/打印

  1. Println
  2. 普瑞夫
  3. 打印

那么,如果有人打电话告诉他们三个之间的区别?

  • Printf- "打印格式化程序" 此功能允许您格式化 数字、变量和字符串放入第一个字符串参数中 给我
  • Print- "打印" 这不能格式化任何东西,它只是 取一个字符串并打印出来
  • Println- "打印行"与Print()相同,但它会 在末尾附加换行符n

正如 Nate 所说:fmt.Printfmt.Println打印原始字符串(fmt.Println附加换行符)

fmt.Printf不会打印新行,您必须自己将其添加到末尾n.

fmt.Printf的工作方式很简单,您提供一个包含某些符号的字符串,其他参数将替换这些符号。例如:

fmt.Printf("%s is cool", "Bob") 

在本例中,%s表示一个字符串。在您的情况下,%T打印变量的类型。

要回答您的问题,

fmt.Printn和"就像fmt.Println

fmt.Printfn%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.
}

printprintln就像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

最新更新