Преобразование типов
Часть раздела Основы путешествия по GDScript на Coddy. Урок 14 из 92.
Преобразование типов преобразует значение из одного типа в другой. В GDScript нужно написать название нового типа и поместить значение в скобки: int(), float() или str().
var whole := int(3.9) # 3
var decimal := float(5) # 5.0
var text := str(42) # "42"int() удаляет десятичную часть без округления: int(3.9) — это 3, а int(-3.9) — это -3.
Преобразование типов также превращает текст в числа. "7" — это String, поэтому его нельзя поместить в переменную int, пока вы не преобразуете его:
var level_text := "7"
var level: int = int(level_text) # 7
var price := float("2.5") # 2.5Без int() выражение var level: int = level_text вызовет ошибку, потому что level_text содержит значение типа String.
str() преобразует любое значение в текст: str(2.5) — это "2.5", а str(true) — это "true".
Текст, который не является числом, не останавливает программу. int("abc") даёт 0, поэтому неожиданное значение 0 часто означает, что текст не был числом.
Задание
НовичокПод комментарием создай три переменные с преобразованными значениями:
int_price: значениеprice, преобразованное вintlevel: текст вlevel_text, преобразованный вintcoins_float: значениеcoins, преобразованное вfloat
Не изменяй остальные строки. Программа выводит:
Price: 99.99
Int Price: 99
Level: 7
Coins: 15.0Попробуйте сами
extends Node
func _ready():
var price := 99.99
var level_text := "7"
var coins := 15
# Преобразуйте значения ниже
# Не изменяйте строки ниже
print("Price: ", price)
print("Int Price: ", int_price)
print("Level: ", level)
print("Coins: ", coins_float)
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
4Операторы. Часть 1
Арифметические операторыЦелочисленное делениеОператор остатка от деленияСокращённая запись арифметических операцийПовторение — простая математикаОператоры сравнения7Основы ввода и вывода
ВыводВывод с переменнымиФорматирование строкВводПреобразование типовПовторение — до 120Повторение — истина или ложь5Операторы, часть 2
Логические операторы, часть 1Логические операторы, часть 2Повторение: простая логикаЛогические операторы, часть 3Тернарный оператор8Калькулятор для разделения счёта
Приветственное сообщениеВвод данных11FizzBuzz с неожиданным поворотом
Обзор игрыФункция FizzBuzz14Массивы: продвинутый уровень
Срезы массивовОператоры последовательностейПринадлежностьСортировка и обратный порядок3Переменные. Часть 2
Объявление типаВывод типаКонстантыПовторение — инициализация переменныхПреобразование типов6Принятие решений
Оператор ifЕсли — иначеПовторение: простой калькуляторВложенные условия if — elseОператор match9Циклы
Цикл forЦикл whileBreakContinueПовторение — факториалФункция rangeВложенный циклПовторение — динамический вводПотренируйтесь самостоятельно: Онлайн-компилятор GDScript