В серии: Библиотека alt м. В. Сысоева, И. В. Сысоев
Базовые операции над строками
Download 0.87 Mb.
|
Боши Лекция Парадигма и методы программирование
2.2.1 Базовые операции над строкамиСуществуют несколько различных подходов к операциям над строками. • «Арифметические операции». Для строк подобно числам определены операторы сложения + и умножения ∗. В результате сложения содержимое двух строк записывается подряд в новую строку, например: >>> S1 = ’Py’ >>> S2 = ’thon’ >>> S3 = S1 + S2 >>> (S3) Python Можно складывать несколько строк подряд. Умножение определено для строки и целого положительного числа, в результате получается новая строка, повторяющая исходную столько раз, каково было значение числа (возьмём строку S3 из прошлого примера): >>> S3 * 4 ’PythonPythonPythonPython’ >>> 2 * S3 ’PythonPython’ Функция len() вычислят длину строки, результат имеет целочисленный тип. Например, len(’Python’) выдаст 6. Доступ по индексу. Можно обратиться к любому элементу (символу) строки по его номеру, нумерация начинается с 0 (первый элемент строки S имеет номер 0, последний — len(S)-1. Разрешается использовать отрицательные индексы, в этом случае нумерация происходит с конца, что можно также интерпретировать как правило: к отрицательным индексам всегда добавляется длина строки, например последний элемент строки чаще всего обозначают как -1): >>> S = ’Python’ >>> S[0] ’P’ >>> S[-1] ’n’ Обращение к символу с несуществующим номером порождает ошибку: «IndexError: string index out of range». При использовании индексов необходимо помнить, что строки в Python относятся к категории неизменяемых последовательностей: нельзя поменять значение того или иного символа, а можно лишь создать новую строку. >>> S = ’Ура’ >>> S[1] = ’х’ Traceback (most recent call last): File " ", line 1, S[1] = ’х’ TypeError: ’str’ does support item assignment >>> S = S[0]+’x’+S[2] >>> S ’Уxа’ • Срезы позволяют скопировать или использовать в выражениях часть строки. Оператор извлечения среза из строки выглядит так: S[n1:n2]. n1 — это индекс начала среза, а n2 — его окончания, причем символ с номером n2 в срез уже не входит! Если указан отрицательный индекс, это значит, что любой индекс -n аналогичен записи len(s)-n. Если отсутствует первый индекс, то срез берётся от начала до второго индекса; при отсутствии второго индекса срез берётся от первого индекса до конца строки: >>> Day = ’morning,Ђafternoon,Ђevening’ >>> Day[0:7] ’morning’ >>> Day[9:-9] ’afternoon’ >>> Day[-7:] ’evening’ Download 0.87 Mb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling