>Or else would fire and water be the same;
>But that is liquid which is moist and wet
>Fire that property can never get.
>Then 'tis not cold that doth the fire put out
>But 'tis the wet that makes it die, no doubt.'''
Для начала получим первые 13 символов (их смещения лежат в диапазоне от 0 до 12):
>>>> poem[:13]
>'All that doth'
Сколько символов содержит это стихотворение? (Пробелы и символы новой строки учитываются.)
>>>> len(poem)
>250
Начинается ли стихотворение с буквосочетания All?
>>>> poem.startswith('All')
>True
Заканчивается ли оно буквосочетанием That's all, folks!?
>>>> poem.endswith('That\'s all, folks!')
>False
Найдем смещение первого включения слова the:
>>>> word = 'the'
>>>> poem.find(word)
>73
А теперь — последнего:
>>>> poem.rfind(word)
>214
Сколько раз встречается трехбуквенное сочетание the?
>>>> poem.count(word)
>3
Являются ли все символы стихотворения буквами или цифрами?
>>>> poem.isalnum()
>False
Нет, в стихотворении имеются еще и знаки препинания.
В этом разделе мы рассмотрим еще несколько примеров использования встроенных функций. В качестве подопытной выберем следующую строку:
>>>> setup = 'a duck goes into a bar…'
Удалим символ «.» с обоих концов строки:
>>>> setup.strip('.')
>'a duck goes into a bar'
Поскольку строки неизменяемы, ни один из этих примеров не изменяет строку setup. Каждый пример просто берет значение переменной setup, выполняет над ним некоторое действие, а затем возвращает результат как новую строку.
Напишем первое слово с большой буквы:
>>>> setup.capitalize()
>'A duck goes into a bar…'
Напишем все слова с большой буквы:
>>>> setup.title()
>'A Duck Goes Into A Bar…'
Запишем все слова большими буквами:
>>>> setup.upper()
>'A DUCK GOES INTO A BAR…'
Запишем все слова маленькими буквами:
>>>> setup.lower()
>'a duck goes into a bar…'
Сменим регистры букв:
>>>> setup.swapcase()
>'a DUCK GOES INTO A BAR…'
Теперь мы поработаем с функциями выравнивания. Строка выравнивается внутри заданного количества пробелов (в данном примере 30).
Отцентруем строку в промежутке из 30 пробелов:
>>>> setup.center(30)
>'··a duck goes into a bar…···'
Выровняем ее по левому краю:
>>>> setup.ljust(30)
>'a duck goes into a bar…·····'
А теперь по правому:
>>>> setup.rjust(30)
>'·····a duck goes into a bar…'
О форматировании и преобразовании строк мы более подробно поговорим в главе 7. Там также будет затронуто использование символа % и функции format().
Заменяем символы с помощью функции replace()
Вы можете использовать функцию replace() для того, чтобы заменить одну подстроку другой. Вы передаете в эту функцию старую подстроку, новую подстроку и количество включений старой подстроки, которое нужно заменить. Если вы опустите последний аргумент, будут заменены все включения. В этом примере совпадает с заданным значением и заменяется следующая строка: