Форматированный вывод
Часть раздела Основы путешествия по GO на Coddy. Урок 29 из 109.
Давайте научимся форматировать вывод в Go с помощью функции fmt.Printf(). Эта функция позволяет отображать значения в определённых форматах с помощью заполнителей.
Сначала давай создадим программу, которая форматирует данные разных типов с помощью заполнителей:
name := "Gopher"
age := 5
height := 1.5
fmt.Printf("Name: %s, Age: %d, Height: %.1f\n", name, age, height)После выполнения этого кода на экране отобразится текст "Name: Gopher, Age: 5, Height: 1.5". Заполнители в нашей строке заменяются фактическими значениями наших переменных.
Давайте разберёмся, что делает каждый заполнитель:
// %s заменяется строковым значением (именем)
// %d заменяется целочисленным значением (возрастом)
// %.1f заменяется числом с плавающей точкой с 1 знаком после запятой (ростом)
// %t заменяется логическим значением (true или false)
// %c заменяется одним символом (руной, например 'A')\n в конце строки формата — это управляющий символ, который перемещает курсор на новую строку, как при нажатии Enter. Он должен находиться внутри кавычек без пробела перед закрывающей кавычкой, иначе в выводе появятся лишние пробелы.
Функция fmt.Printf() заменяет каждый заполнитель соответствующей переменной, которую мы указываем после строки формата. Порядок переменных должен соответствовать порядку заполнителей.
Теперь попробуем другой пример с разными типами форматирования:
pi := 3.14159
percentage := 0.75
letter := 'A'
fmt.Printf("Pi: %.2f, Percentage: %.1f%%, Letter: %c\n", pi, percentage*100, letter)После выполнения этого кода на экране появится текст "Pi: 3.14, Percentage: 75.0%, Letter: A". Обрати внимание, что %.2f показывает только 2 знака после запятой для числа пи, а процент мы умножаем на 100, чтобы отобразить его в процентах.
Также обрати внимание на %% в строке формата. Это специальная escape-последовательность, которая выводит буквальный знак %. Один символ % воспринимался бы как начало заполнителя, поэтому мы используем %%, когда хотим вывести в результате настоящий знак процента.
Задание
ЛегкоВ этом задании ты потренируешься использовать форматированный вывод в Go с помощью функции `fmt.Printf()`.
У тебя есть информация о товаре, которую нужно вывести в определённом формате, используя спецификаторы формата. Переменные уже определены.
Твоя задача — использовать `fmt.Printf()` с подходящими спецификаторами формата, чтобы вывести информацию о товаре:
- Используй `%s` для строк
- Используй `%d` для целых чисел
- Используй `%.2f` для чисел с плавающей точкой с 2 знаками после запятой
- Используй `%t` для логических значений
Выведи информацию о товаре в точности так, как показано в ожидаемом выводе.
Попробуйте сами
package main
import "fmt"
func main() {
// Информация о товаре
productName := "Wireless Headphones"
productPrice := 79.99
productInStock := true
productID := 12345
// TODO: Используйте fmt.Printf() со спецификаторами формата, чтобы вывести информацию о товаре:
// Product: Wireless Headphones (ID: 12345)
// Price: $79.99
// In Stock: true
//
// Подсказка: используйте %s для строк, %d для целых чисел, %.2f для чисел с плавающей точкой, %t для логических значений
// Не забудьте добавить \n в конце каждой строки для правильного форматирования
}В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
4Операторы сравнения и логические операторы
Операторы сравнения — Часть 1Операторы сравнения — Часть 2Логический оператор ANDЛогический оператор ORЛогический оператор NOTОсновы приоритета операторовИтоги: выполнение сравнений7Управляющие конструкции: Циклы
Что такое цикл `for`Цикл `for` — основыЦикл `for` — только условиеКлючевое слово `break`Ключевое слово `continue`Вложенные циклыИтоги — повторение действий2Переменные и базовые типы данных
Что такое переменнаяВывод типов с помощью `:=`Целые числа (int)Числа с плавающей точкойЛогический тип (Booleans)СтрокиНулевые значения (Zero Values)КонстантыПравила именованияИтоги: переменные и типы5Основы ввода-вывода
Форматированный выводСпецификаторы форматаВывод типовБазовый ввод данных пользователемИтоги: ввод и вывод8Функции
Понимание функцийОбъявление функцииВызов функцийПараметры функцииВозврат одного значенияВозврат нескольких значенийИменованные возвращаемые значенияОсновы области видимости функцийИтоги — создание переиспользуемого кода3Базовые операторы
Арифметические операторыОператор деленияОператор остатка от деленияОператор присваиванияКомбинированные операторы присваиванияИнкремент и декрементПовторение — Вычисления6Управление потоком: Условные конструкции
Оператор `if`Ключевое слово `else`Ключевое слово `else if`Затенение переменных в `if`Инициализация переменныхОператор `switch`Switch с выражениямиSwitch без выраженийКлючевое слово `fallthrough`Итоги — Принятие решенийПотренируйтесь самостоятельно: Онлайн-компилятор Go