Строка - это последовательность пронумерованных символов. Строковые значения в Python имеют тип str.
Каждый символ в строке обладает порядковым номером - индексом. Нумерация символов начинается с 0 (слева направо).
Чтобы обратиться к символу по его индексу используется оператор индексирования [<индекс>]:
Значения в строковом типе - не изменяемы. Нельзя заменить отдельные символы, обратившись к ним по индексу:
Под длиной строки будем понимать количество символов в ней, включая пробелы.
Стоит учитывать, что строка может быть пустой. В таком случае, её длина будет равна 0:
Для того, чтобы получить подстроку в Python используется оператор среза - [<начало>:<конец>].
Если пропустить и <начало> и <конец>, то получим копию строки:
Общая форма записи оператора среза: [<начало>:<граница>:<шаг>]. Последнее значение определяет с каким шагом нужно брать символы из строки:
К строковым значениям применимы два арифметических оператора - сложение и умножение.
Сложение строковых значений называется конкатенацией:
inС помощью оператора in можно выяснить входит ли подстрока в строку:
strВсе строковые значения являются объектами класса str. В этом можно убедится с помощью функции type(), которая возвращает тип аргумента:
Класс str обладает рядом методов, которые упрощают обработку строк.
str
| Метод | Назначение |
|---|---|
s.count(sub) |
Количество вхождений подстроки sub в строку s |
s.find(sub) |
Находит индекс первого вхождения подстроки sub в строку s |
s.replace(old, new) |
Заменяет подстроку old на new; возвращает новую строку |
s.upper() |
Преобразование всех символов в прописные; возвращает новую строку |
s.lower() |
Преобразование всех символов в строчные; возвращает новую строку |
Примеры использования методов:
| Инструкции и операторы | Назначение |
|---|---|
+ |
Конкатенация |
* |
Повторение |
<строка>[] |
Индексирование |
<строка>[ : ] |
Срез |
len(<строка>) |
Длина строки |
in, not in |
Нахождение в строке |
for <символ> in <строка> |
Перебор символов |
mess[3]mess[1:4]mess[:6]mess[:]'!' in messmess.count('а')mess.upper()mess[-1]Список - это набор упорядоченных и пронумерованных элементов. В Python списки имеют тип list.
Элементы списка пронумерованы и к ним можно обращаться по их индексу. Нумерация элементов списка начинается с нуля.
Получить элемент списка по его индексу можно с помощью оператора [<индекс>].
Элементами списка могут быть другие списки.
С помощью функции len() можно узнать количество элементов в списке:
Чтобы получить часть списка используется оператор среза [:]. Со списками оператор среза работает также, как и для строковых значений:
Списки можно складывать между собой.
inС помощью операторов in и not in можно определить есть ли в списке указанный элемент:
С помощью метода split() можно разделить строку и получить список подстрок.
Метод split() принимает в качестве аргумента разделитель строки:
Метод класса join() объединяет элементы списка в одну строку.
listlist
| Метод | Назначение |
|---|---|
<список>.append(x) |
Добавление x в конец списка |
<список>.sort() |
Сортировка списка |
<список>.insert(i, x) |
Вставка в список элемента x по индексу i |
<список>.count(x) |
Получение количества повторений x в списке |
<список>.pop()<список>.pop(i) |
Удаление из списка последнего или i-го элемента и возврат его значения |
Рассмотрим пример применения некоторых методов:
| Инструкции и операторы | Значение |
|---|---|
+ |
Конкатенация |
* |
Повторение |
<список>[] |
Индексирование |
<список>[:] |
Срез |
len(<список>) |
Количество элементов |
for <элемент> in <список> |
Перебор символов |
<выражение> in <список> |
Проверка принадлежности (Boolean) |
lst[3]lst[1:3]10 in lst