Зарегистрируйтесь, чтобы продолжить обучение

Агрегация данных (Строки) Основы Python

Агрегация строк — это такие задачи, в которых заранее неизвестно, что содержат строки и какой у них размер.

Представим функцию, которая повторяет строку указанное количество раз. Да, в Python для повтора встроен оператор умножения строки на число, но здесь мы посмотрим как он примерно реализован внутри:

repeat('hexlet', 3)  # 'hexlethexlethexlet'

Принцип работы этой функции — в цикле происходит «наращивание» строки указанное количество раз:

def repeat(text: str, times: int) -> str:
    # Нейтральный элемент для строк — пустая строка
    result = ''
    i = 1

    while i <= times:
        # Каждый раз добавляем строку к результату
        result = result + text
        i = i + 1

    return result

Распишем выполнение этого кода по шагам:

# Для вызова repeat('hexlet', 3)
result = ''
result = result + 'hexlet'  # hexlet
result = result + 'hexlet'  # hexlethexlet
result = result + 'hexlet'  # hexlethexlethexlet

Нейтральный элемент

Чтобы наращивание работало, нужно стартовое значение. Для строк таким значением является пустая строка ''.

Она называется нейтральным элементом, потому что при конкатенации ничего не меняет:

print('' + 'abc')   # => abc
print('abc' + '')   # => abc

Поэтому именно пустая строка всегда используется как начальное значение при агрегации строк.

Открыть доступ

Курсы программирования для новичков и опытных разработчиков. Начните обучение бесплатно

  • 130 курсов, 2000+ часов теории
  • 1000 практических заданий в браузере
  • 360 000 студентов
Отправляя форму, вы принимаете «Соглашение об обработке персональных данных» и условия «Оферты», а также соглашаетесь с «Условиями использования»

Наши выпускники работают в компаниях:

Логотип компании Альфа Банк
Логотип компании Aviasales
Логотип компании Yandex
Логотип компании Tinkoff