Your AI powered learning assistant

Уроки Python с нуля / #8 – Функции строк. Индексы и срезы

Начало

00:00:00

Строки - это последовательности символов Строка ведет себя как список, в котором каждый элемент представляет собой отдельный символ. Для доступа к символу используются квадратные скобки с индексом. Индексация начинается с 0, поэтому первый символ имеет индекс 0, а второй - индекс 1. Печать по индексу подтверждает поиск односимвольных символов.

Общие утилиты со списками: len и count Со строками работают те же инструменты, что и для списков. len возвращает общее количество символов в строке. count сообщает, сколько раз встречается данный символ или подстрока, возвращая 0, если они отсутствуют. Эти функции обеспечивают быстрое измерение без дополнительных действий.

Преобразование и валидация кейсов upper преобразует всю строку в верхний регистр. isupper и islower возвращают значение True или False в зависимости от того, написан ли текст полностью верхним или строчным шрифтом. lower переводит все буквы в нижний регистр. заглавная буква делает первую букву каждого слова прописной, а остальные - строчными.

Поиск подстрок с помощью функции find find выполняет поиск в строке по одному или нескольким символам. Возвращает индекс, с которого начинается поиск совпадения. При использовании многосимвольного целевого объекта возвращаемый индекс соответствует первому совпадающему символу. Это позволяет быстро находить нужные символы или подстроки.

Разбиение текста на элементы split разбивает строку на список с помощью выбранного разделителя. Строка, разделенная запятыми, например "футбол, баскетбол, катание на коньках", становится списком из трех элементов. Разделитель, состоящий из нескольких символов, например ", ", работает таким же образом. Полученный список можно сохранить и проиндексировать для прямого доступа.

Обработка пользовательского ввода с разделителями Введенный пользователем список, разделенный запятыми, может быть преобразован в отдельные элементы с помощью функции разделения. Использование ", " в качестве разделителя позволяет четко разделять записи, такие как хобби. Это превращает одну длинную строку в несколько удобных для управления частей. Индексация списка позволяет найти любую конкретную запись.

Обновление списков по индексу во время итерации Преобразование элементов с помощью for item in list не изменяет исходный список. Перебор индексов с помощью range(len(список)) позволяет вернуть их в список. Применение таких методов, как capitalize, к каждому элементу стандартизирует форматирование. Обновленный список затем отражает все предполагаемые изменения.

Перестраивание строк с помощью join join объединяет элементы списка в единую строку с использованием указанного разделителя. При выборе ", " после обработки будет восстановлено форматирование с использованием запятой и пробела. В результате будет получена обычная строка без квадратных скобок и с исправленным регистром. При желании можно использовать любой другой разделитель.

Нарезка основы на нитки В срезах выбираются несколько символов с параметрами start:end, где start - включающий, а end - исключающий. При значении 0:4 выводятся первые четыре символа. Если не указывать end, будут возвращены все значения от начала до конца строки. В средних диапазонах строк, таких как 4:6, извлекается только необходимый сегмент.

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

Этапы среза для пропуска элементов Необязательный третий параметр задает шаг, значение по умолчанию равно 1. Шаги длиной 2 или 3 символа пропускаются соответственно, что приводит к чередованию или выделению с интервалом. Начало или конец можно опустить, но при этом применить шаг ко всему диапазону. Комбинируя границы и шаги, можно получить точную необходимую подпоследовательность.

Применение фрагментов к спискам и изменение порядка в обратном порядке Списки поддерживают те же шаблоны индексации и разбивки на части, включая отрицательные индексы. Диапазоны, подобные 2: выберите от позиции до конца, а шаги могут пропускать элементы. Отрицательный шаг (например, -1 или -2) изменяет порядок, при необходимости пропуская элементы. Эти методы позволяют быстро выбирать элементы из списков, кортежей, наборов и словарей.