Tutorials References Exercises Menu
Paid Courses

Go Output


Go has three ways to output text.


The Print() Function

The Print() function prints its arguments with their default format.

Example

Print the values of i and j:

package main
import ("fmt")

func main() {
  var i,j string = "a","b"

  fmt.Print(i)
  fmt.Print(j)
}

Result:

ab
Try it Yourself »

Example

If we want to print the arguments in new lines, we need to use \n.

package main
import ("fmt")

func main() {
  var i,j string = "a","b"

  fmt.Print(i, "\n")
  fmt.Print(j, "\n")
}

Result:

a
b
Try it Yourself »

Tip: \n creates new lines.

Example

It is also possible to only use one Print() for printing multiple variables.

package main
import ("fmt")

func main() {
  var i,j string = "a","b"

  fmt.Print(i, "\n",j)
}

Result:

a
b
Try it Yourself »

Example

Print() inserts a space between the arguments if neither are strings:

package main
import ("fmt")

func main() {
  var i,j = 1,2

  fmt.Print(i,j)
}

Result:

1 2
Try it Yourself »

Example

If we want to add a space between string arguments, we need to use " ":

package main
import ("fmt")

func main() {
  var i,j string = "a","b"

  fmt.Print(i, " ", j)
}

Result:

a b
Try it Yourself »

The Println() Function

The Println() function is similar to Print() with the difference that a space is added between the arguments, and a newline is added at the end:

Example

package main
import ("fmt")

func main() {
  var i,j string = "a","b"

  fmt.Println(i,j)
}

Result:

a b
Try it Yourself »

The Printf() Function

The Printf() function first formats its arguments based on the given formatting parameters and then prints them.

Here we use two formatting parameters:

  • %v is used to print the value of the arguments
  • %T is used to print the type of the arguments

Example

package main
import ("fmt")

func main() {
  var i string = "a"

  fmt.Printf("i has value: %v and type: %T", i, i)
}

Result:

i has value: a and type: string
Try it Yourself »