Функции вывода в Go
Вывести текст в Go можно с помощью любой из трёх функций:
Print()Println()Printf()
Функция Print()
Print() выводит свои аргументы в их формате по умолчанию.
Примечание: Чтобы начать новую строку, используйте \n.
Когда ни один из двух аргументов не является строкой, Print() ставит между ними пробел.
Пример
Здесь i и j выводятся друг за другом, и между ними ничего нет:
Вывод: Программа на Go и захваченный вывод
package main
import ("fmt")
func main() {
var i,j string = "Привет","Мир"
fmt.Print(i)
fmt.Print(j)
}
Пример
Чтобы вывести каждый аргумент на отдельной строке, добавьте после него \n:
Вывод: Программа на Go и захваченный вывод
package main
import ("fmt")
func main() {
var i,j string = "Привет","Мир"
fmt.Print(i, "\n")
fmt.Print(j, "\n")
}
Пример
Один вызов Print() может обработать сразу несколько переменных:
Вывод: Программа на Go и захваченный вывод
package main
import ("fmt")
func main() {
var i,j string = "Привет","Мир"
fmt.Print(i, "\n",j)
}
Пример
Между строками пробел автоматически не ставится, поэтому его нужно добавить самостоятельно с помощью " ":
Вывод: Программа на Go и захваченный вывод
package main
import ("fmt")
func main() {
var i,j string = "Привет","Мир"
fmt.Print(i, " ", j)
}
Пример
Среди целочисленных аргументов нет строк, поэтому Print() сам добавляет пробел:
Вывод: Программа на Go и захваченный вывод
package main
import ("fmt")
func main() {
var i,j = 10,20
fmt.Print(i,j)
}
Функция Println()
Println() работает во многом как Print(), но с двумя дополнениями: он всегда ставит пробел между аргументами и завершает вывод переводом строки:
Пример
Вывод: Программа на Go и захваченный вывод
package main
import ("fmt")
func main() {
var i,j string = "Привет","Мир"
fmt.Println(i,j)
}
Функция Printf()
Printf() форматирует свои аргументы в соответствии с заданным вами глаголом форматирования и только затем выводит их.
В этом примере используются два таких глагола:
%vвыводит значение аргумента%Tвыводит тип аргумента
Пример
Вывод: Программа на Go и захваченный вывод
package main
import ("fmt")
func main() {
var i string = "Привет"
var j int = 15
fmt.Printf("i имеет значение: %v и тип: %T\n", i, i)
fmt.Printf("j имеет значение: %v и тип: %T", j, j)
}