Форматирование строк
Часть раздела Основы путешествия по GDScript на Coddy. Урок 33 из 92.
Объединение множества значений с помощью + и str() приводит к длинным строкам. Строку форматирования читать проще: ты пишешь текст один раз, ставишь заполнитель там, где должно быть каждое значение, и указываешь значения после оператора %:
var player_name := "Ada"
var age := 12
print("%s is %d years old" % [player_name, age])Это выводит Ada is 12 years old. Значения помещаются в квадратные скобки в том же порядке, что и заполнители. Если значение одно, скобки можно не указывать: "HP: %d" % 80 — это HP: 80.
Плейсхолдеры, которые вы будете использовать чаще всего:
%sвставляет любое значение как текст%dвставляет целое число%.2fвставляет десятичное число, округлённое до 2 знаков после запятой
Например, с var price := 2.5:
print("Price: %.2f" % price)
print("Price: %s" % price)Первая строка выводит Price: 2.50, вторая выводит Price: 2.5.
Чтобы вывести знак процента в строке формата, напиши %%: "%d%%" % 50 — это 50%.
Количество значений должно совпадать с количеством заполнителей. Если значение отсутствует, GDScript сообщает об ошибке форматирования при выполнении строки.
Задание
ЛегкоВ магазине продаются зелья. Программа хранит название товара, его цену и купленное количество. Используй одну строку форматирования с оператором %, чтобы вывести строку чека:
Item: Health Potion x3, total: $7.50Общая сумма — это price * quantity, отображаемая с 2 знаками после запятой. Помести значения в квадратные скобки после %.
Попробуйте сами
extends Node
func _ready():
var item_name := "Health Potion"
var price := 2.5
var quantity := 3
# Выведите строку чека с помощью строки форматирования
pass
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
4Операторы. Часть 1
Арифметические операторыЦелочисленное делениеОператор остатка от деленияСокращённая запись арифметических операцийПовторение — простая математикаОператоры сравнения7Основы ввода и вывода
ВыводВывод с переменнымиФорматирование строкВводПреобразование типовПовторение — до 120Повторение — истина или ложь5Операторы, часть 2
Логические операторы, часть 1Логические операторы, часть 2Повторение: простая логикаЛогические операторы, часть 3Тернарный оператор8Калькулятор для разделения счёта
Приветственное сообщениеВвод данных11FizzBuzz с неожиданным поворотом
Обзор игрыФункция FizzBuzz14Массивы: продвинутый уровень
Срезы массивовОператоры последовательностейПринадлежностьСортировка и обратный порядок3Переменные. Часть 2
Объявление типаВывод типаКонстантыПовторение — инициализация переменныхПреобразование типов6Принятие решений
Оператор ifЕсли — иначеПовторение: простой калькуляторВложенные условия if — elseОператор match9Циклы
Цикл forЦикл whileBreakContinueПовторение — факториалФункция rangeВложенный циклПовторение — динамический вводПотренируйтесь самостоятельно: Онлайн-компилятор GDScript