Перебор строк. Часть 1
Часть раздела Основы путешествия по GDScript на Coddy. Урок 71 из 92.
Строка — это последовательность символов, поэтому цикл for может проходить по ней, как по массиву. Каждый символ — это строка длиной 1:
var text := "Hey"
for letter in text:
print(letter)H
e
yУ строк тоже есть индексы, начиная с 0. text.length() — это количество символов, поэтому range(text.length()) даёт каждый индекс:
for i in range(text.length()):
print("position %d: %s" % [i, text[i]])position 0: H
position 1: e
position 2: yЧтобы сравнивать буквы без учёта регистра, сначала преобразуй их: to_lower() возвращает строку в нижнем регистре, а to_upper() — в верхнем. "PiZZa".to_lower() — это "pizza".
Задание
ЛегкоПрограмма считывает одну строку текста в text. Выведите, сколько раз в ней встречается буква p, считая и p, и P.
Для входных данных Happy people play ping pong результатом будет 7.
Попробуйте сами
extends Node
func _ready():
var text := OS.read_string_from_stdin()
# Подсчитайте p и P в text, затем выведите их количество
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
4Операторы. Часть 1
Арифметические операторыЦелочисленное делениеОператор остатка от деленияСокращённая запись арифметических операцийПовторение — простая математикаОператоры сравнения7Основы ввода и вывода
ВыводВывод с переменнымиФорматирование строкВводПреобразование типовПовторение — до 120Повторение — истина или ложь5Операторы, часть 2
Логические операторы, часть 1Логические операторы, часть 2Повторение: простая логикаЛогические операторы, часть 3Тернарный оператор8Калькулятор для разделения счёта
Приветственное сообщениеВвод данных11FizzBuzz с неожиданным поворотом
Обзор игрыФункция FizzBuzz14Массивы: продвинутый уровень
Срезы массивовОператоры последовательностейПринадлежностьСортировка и обратный порядок3Переменные. Часть 2
Объявление типаВывод типаКонстантыПовторение — инициализация переменныхПреобразование типов6Принятие решений
Оператор ifЕсли — иначеПовторение: простой калькуляторВложенные условия if — elseОператор match9Циклы
Цикл forЦикл whileBreakContinueПовторение — факториалФункция rangeВложенный циклПовторение — динамический вводПотренируйтесь самостоятельно: Онлайн-компилятор GDScript