Последовательности: строки. Урок 9

Конспект урока по Python
Элективный курс: Основы программирования на Python
Уровень: Программирование для начинающих

Строки уже были упомянуты в уроке о типах данных; здесь рассмотрим их более подробно.

Строка — это сложный тип данных, представляющий собой последовательность, т.е. упорядоченный набор других объектов (букв или иных символов).

Строки на языке программирования Python могут заключаться как в одиночные, так и двойные кавычки. Однако, начало и конец строки должны обрамляться одинаковым типом кавычек.

Существует специальная функция len (), позволяющая измерить длину строки. Результатом выполнения данной функции является число, показывающее количество символов в строке. Также для строк существуют операции конкатенации (+) и дублирования (*).

Операции со строками на Python

Поскольку в последовательностях важен порядок символов, т.е у каждого есть свое положение, то можно обращаться к конкретному символу в строке и извлекать его с помощью оператора индексирования.

Оператор индексирования. Язык программирования Python

В примере, выражение ”afbhurjka; kdfj”[1] привело к извлечению 2 символа. Дело в том, что индексация начинается не с единицы, а с нуля. Поэтому, когда требуется извлечь первый символ, то оператор индексирования должен выглядеть так: [0]. Также позволительно извлекать символы, начиная отсчет с конца. Тогда отсчет идет с -1 (последний символ).

Особенности индексации в Python

Очевидно, что удобнее работать не с самими строками, а с переменными, которые на них ссылаются. Результат выполнения выражения индексирования можно присвоить другой переменной.

Присвоение переменной значения выражения индексирования строки

Можно извлекать из строки не один символ, а несколько, т.е. получать срез (подстроку). Оператор извлечения среза из строки выглядит так: [X:Y]. X – это индекс начала среза, а Y – его окончания; причем символ с номером Y в срез уже не входит. Если отсутствует первый индекс, то срез берется от начала до второго индекса; при отсутствии второго индекса, срез берется от первого индекса до конца строки.

Получение среза из строки. Язык программирования Python

Кроме того, можно извлекать символы не подряд, а через определенное количество символов. В таком случае оператор индексирования выглядит так: [X:Y:Z]; Z – это шаг, через который осуществляется выбор элементов.

Перебор символов строки. Язык программирования Python

Практическая работа

  1. Свяжите переменную с любой строкой, состоящей не менее чем из 8 символов. Извлеките из строки первый символ, затем последний, третий с начала и третий с конца. Измерьте длину вашей строки.
  2. Создайте строку длиной 10-15 символов (свяжите с переменной) и извлеките из нее следующие срезы:
    * Первые восемь символов;
    * Четыре символа из центра строки;
    * Символы с индексами кратными трем.