ZetCode

Golang fmt.Println 函数

最后修改时间 2025 年 5 月 8 日

本教程解释了如何在 Go 中使用 fmt.Println 函数。我们将通过格式化打印的实际示例来介绍基本输出。

fmt.Println 函数用于将值打印到 Go 的标准输出。它会自动在值之间添加空格,并在末尾添加换行符。这是用于控制台输出的最常用函数之一。

在 Go 中,fmt.Println 是 fmt 包的一部分,该包实现了格式化的 I/O。它可以以简单的格式打印任意数量的任何类型的值。

基本的 fmt.Println 示例

fmt.Println 最简单的用法是将单个值打印到控制台。此示例演示了基本输出功能。
注意:该函数会自动添加一个换行符。

basic_println.go
package main

import "fmt"

func main() {
    fmt.Println("Hello, Go!")
}

此代码将字符串 "Hello, Go!" 打印到标准输出,后跟一个换行符。必须导入 fmt 包才能使用 Println。

打印多个值

fmt.Println 可以接受不同类型的多个参数。此示例显示了使用自动空格打印多个值。

multiple_values.go
package main

import "fmt"

func main() {
    name := "Alice"
    age := 30
    fmt.Println("Name:", name, "Age:", age)
}

该函数会自动在值之间插入空格并在末尾添加换行符。不同类型(字符串和整数)会自动转换为字符串。

打印变量和字面量

fmt.Println 可以在其参数中混合变量和字面量。此示例演示了在一次调用中组合不同的值类型。

variables_literals.go
package main

import "fmt"

func main() {
    pi := 3.14159
    fmt.Println("The value of pi is approximately", pi, "and", 22/7, "is a rough approximation")
}

输出结合了字符串字面量、浮点变量和整数表达式。所有值都会自动转换为字符串并用空格分隔。

打印特殊字符

fmt.Println 可以处理换行符和制表符等特殊字符。此示例显示了转义序列如何在输出中处理。

special_chars.go
package main

import "fmt"

func main() {
    fmt.Println("First line\nSecond line")
    fmt.Println("Column1\tColumn2\tColumn3")
    fmt.Println("Backslash: \\")
}

像 \n、\t 和 \\ 这样的转义序列会被解释为特殊字符。该函数在将输出发送到控制台之前处理这些字符。

打印结构体和切片

fmt.Println 可以打印结构体和切片等复杂数据结构。此示例演示了复合类型的自动格式化。

composite_types.go
package main

import "fmt"

type Person struct {
    Name string
    Age  int
}

func main() {
    p := Person{"Bob", 42}
    nums := []int{1, 2, 3, 4, 5}
    
    fmt.Println("Person:", p)
    fmt.Println("Numbers:", nums)
}

结构体和切片会自动转换为人类可读的字符串。输出显示了这些复合类型的内部表示。

打印到多行

多次调用 fmt.Println 会产生单独的输出行。此示例显示了连续调用如何产生不同的行。

multi_line.go
package main

import "fmt"

func main() {
    fmt.Println("Line 1")
    fmt.Println("Line 2")
    fmt.Println("Line 3")
    
    // Equivalent to:
    fmt.Print("Line A\n")
    fmt.Print("Line B\n")
    fmt.Print("Line C\n")
}

每次调用 fmt.Println 都会以换行符结束,从而创建单独的行。该示例还显示了使用带 \n 的 fmt.Print 的等效方法。

打印布尔值

fmt.Println 可以将布尔值正确格式化为“true”或“false”。此示例演示了打印布尔表达式和变量。

booleans.go
package main

import "fmt"

func main() {
    a := true
    b := false
    fmt.Println("a is", a, "and b is", b)
    fmt.Println("5 > 3 is", 5 > 3)
    fmt.Println("Logical AND:", a && b)
}

布尔值会自动转换为它们的字符串表示形式。输出显示了布尔变量和求值为布尔值的表达式。

来源

Go fmt 包文档

本教程通过将格式化输出到控制台的实际示例,涵盖了 Go 中的 fmt.Println 函数。

作者

我的名字是 Jan Bodnar,我是一位充满激情的程序员,拥有丰富的编程经验。我自 2007 年以来一直在撰写编程文章。至今,我已撰写了 1,400 多篇文章和 8 本电子书。我在教授编程方面拥有十多年的经验。

列出所有 Golang 教程