JavaRush /Курсы /Go SELF /Вывод на экран в Go: fmt.Println и fmt.Print

Вывод на экран в Go: fmt.Println и fmt.Print

Go SELF
1 уровень , 2 лекция
Открыта

1. Знакомство с командой fmt.Println

Вы только что написали свою первую программу на Go и вывели на экран первое сообщение. Поздравляю вас с этим. Давайте же не останавливаться...

Вот вам 2 факта о командах в Go:

Любая программа на Go состоит из инструкций (команд). Команды бывают разные. В языке Go есть команды на все случаи жизни. Каждая команда описывает какое-то определенное действие.

В Go точка с запятой в конце строки обычно не нужна: достаточно перевода строки.

Примеры команд вывода:

Команда Описание (что делает)
fmt.Println(1)
Выводит на экран число:
1
fmt.Println("Amigo")
Выводит на экран надпись:
Amigo
fmt.Println("Risha & Amigo")
Выводит на экран надпись:
Risha & Amigo

На самом деле это одна команда — fmt.Println. А в круглых скобках в нее передаются параметры. В зависимости от значений параметров, одна команда может выполнять разные действия. Это очень удобно.

Размер букв имеет значение

В Go размер имеет значение: важно, большими или маленькими буквами написаны команды. Команда fmt.Println() работать будет, а fmt.println() — нет. Если вы напишете команду не теми буквами, то Go ее не распознает, и следовательно выполнять не будет. Так что будьте внимательными.

Двойные кавычки

Если вы хотите вывести на экран текст, его нужно с двух сторон обозначить двойными кавычками.

Одинарная кавычка выглядит вот так ', а двойная — вот так ". Двойная кавычка — это не две одинарных: просьба не путать.

В Go одинарные кавычки обычно используются не для строк, а для одного символа (rune), например: 'A'.

Двойная — это та, которая рядом с кнопкой Enter. На ней еще обычно находится кириллическая буква "Э".

2. Знакомство с командой fmt.Print

Есть еще одна команда, похожая на fmt.Println(), и она называется fmt.Print().

Команда fmt.Println() выводит на экран текст и после него добавляет перевод курсора на следующую строку, как бы нажимая Enter. Таким образом следующая команда fmt.Println() выведет текст уже на следующей строке. А следующая команда — на следующей, и так далее.

В отличие от fmt.Println(), команда fmt.Print() не добавляет Enter после вывода текста. Поэтому текст, выведенный несколькими командами fmt.Print(), будет выводиться в одну строчку.

Пример 1:

package main

import "fmt"

func main() {
	fmt.Print("Amigo")
	fmt.Println("The")
	fmt.Print("Best")
}
Смешанный вывод Print и Println

Выведет на экран:

AmigoThe
Best

Пример 2:

package main

import "fmt"

func main() {
	fmt.Print("Amigo")
	fmt.Print("The")
	fmt.Print("Best")
}
Только Print — всё в одну строку

Выведет на экран:

AmigoTheBest

Если хотите вывести текст на одной строке, пользуйтесь командой Print, если на нескольких — Println. Все просто.

3. Разбираем команду fmt.Println

Если вы хотя бы немного знаете английский, то изучать программирование вам будет намного проще. Название многих команд в Go напрямую связанное с тем, что они делают.

Например Println — это print + lnнапечатай линию (строку). Слово print думаю всем известно, а ln — сокращение от line. Каждая строчка текста на экране — это отдельная линия. Поэтому напечатать линию — это именно вывести линию текста (и перейти на новую строку).

fmt — это пакет стандартной библиотеки Go. Его название обычно расшифровывают как format (форматирование). Через него чаще всего печатают текст на экран (в консоль). Консоль — это старое название устройства, которое позволяло печатать команды на клавиатуре и выводить результаты на экран.

Другими словами, работа с консолью — это вывод текста на экран и ввод данных с помощью клавиатуры. Поэтому если вы в будущем услышите, что программа что-то вывела в консоль, то это просто значит, что она вывела текст на экран.

Вот и получается что, fmt.Println — это примерно "Эй, консоль, выведи мне на экран строку текста (и перейди на следующую)".

4. Примеры вывода различных данных

Давайте поиграемся с выводом в консоли. Начнём с самого простого и постепенно усложним:

Вывод чисел

package main

import "fmt"

func main() {
	fmt.Println(1001)
	fmt.Println(-15)
}
Вывод чисел

Вывод текста

package main

import "fmt"

func main() {
	fmt.Println("Программирование — это круто!")
	fmt.Println("Пошутили, а теперь — кодим.")
}
Вывод текста

Вывод сразу нескольких значений

Если вы хотите вывести несколько значений, проще всего передать несколько аргументов в fmt.Println:

package main

import "fmt"

func main() {
	fmt.Println("Мой возраст:", 28)
}
Несколько аргументов в fmt.Println

Выведет на экран:

Мой возраст: 28

Так очень удобно формировать осмысленные предложения:

package main

import "fmt"

func main() {
	fmt.Println("Сейчас на дворе", 2026, "год.")
}
Склейка смысла без конкатенации: несколько аргументов

Выведет на экран:

Сейчас на дворе 2026 год.

5. Основные ошибки при использовании fmt.Println

Молодые джедаи часто наступают на одни и те же грабли. Но, чтобы вы не превращались в героя книги "1001 ошибка в Go", вот список распространённых косяков и подсказки, как их избегать.

Ошибка 1. Забыли закрыть строку — потеряли вторую кавычку.

Если написать так (обратите внимание: строка не закрыта):

package main

import "fmt"

func main() {
	fmt.Println("Ой, открыли кавычку и забыли закрыть);
}

Компилятор тут возмутится чем-то вроде "string literal not terminated" — закрывайте строки!

Ошибка 2. Забыли импортировать пакет fmt

В Go, чтобы использовать fmt.Println, нужно импортировать пакет fmt.

package main

func main() {
	fmt.Println("Если нет import fmt, будет ошибка компиляции")
}

Ошибка 3. Использование неправильных кавычек

Новички иногда используют кавычки-ёлочки или одинарные:

package main

import "fmt"

func main() {
	fmt.Println(‘Ошибка’) // неправильно: это не стандартные двойные кавычки
	fmt.Println('Ошибка') // неправильно: в Go одинарные кавычки — для одного символа (rune)
	fmt.Println("Ошибка") // правильно
}

Для строк всегда используем двойные стандартные — вот такие: ".

1
Задача
Go SELF, 1 уровень, 2 лекция
Недоступна
Первое приветствие
Первое приветствие
1
Задача
Go SELF, 1 уровень, 2 лекция
Недоступна
Две строки
Две строки
1
Задача
Go SELF, 1 уровень, 2 лекция
Недоступна
Печать фактов
Печать фактов
1
Задача
Go SELF, 1 уровень, 2 лекция
Недоступна
Маршрут стрелками
Маршрут стрелками
Комментарии (5)
ЧТОБЫ ПОСМОТРЕТЬ ВСЕ КОММЕНТАРИИ ИЛИ ОСТАВИТЬ КОММЕНТАРИЙ,
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ
FacelessASP Уровень 2
21 июня 2026
Валидатор криво работает, со второго раза правильный код только принимает)
Evgeny Tropkin Уровень 12
18 июня 2026
Две строки: запустил валидатор 3 раза на одном и том же решении. Правильным оно оказалось только с третьего раза :-)
Мишаня Уровень 15
25 апреля 2026
Печать фактов - плохо валидатор работает, не принимает форматирование строки.
Руслан Уровень 2
21 апреля 2026
Задача "Печать фактов" сделана с ошибкой, валидатор не проходит с правильным решением. Помощник выдает бред
Сергей Уровень 6
21 апреля 2026
Да, увы ошибку выдает