В серии: Библиотека alt м. В. Сысоева, И. В. Сысоев


Базовые операции над строками


Download 0.87 Mb.
bet19/40
Sana23.04.2023
Hajmi0.87 Mb.
#1387407
TuriКнига
1   ...   15   16   17   18   19   20   21   22   ...   40
Bog'liq
Боши Лекция Парадигма и методы программирование

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:
1   ...   15   16   17   18   19   20   21   22   ...   40




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling