Статья Автор: Александр Ф. Алейников

9.3 Методы строк. Часть 1

Методы и функции

Мы уже знакомы с некоторыми встроенными функциями: min()max()len()int()float() и т.д. Метод — специализированная функция, тесно связанная с объектом. Как и функция, метод вызывается для выполнения отдельной задачи, но он вызывается для определенного объекта и “знает” о своем целевом объекте во время выполнения.

Таким образом: метод — функция, применяемая к объекту. В данном случае к строке. Метод вызывается в виде имя_объекта.имя_метода(параметры).

Например, s.find('e') — это применение к строке s метода find с одним параметром 'e'.

Методы строкового типа данных можно разделить на три группы:

  1. Конвертация регистра;
  2. Поиск и замена;
  3. Классификация символов.

Конвертация регистра

Методы в этой группе выполняют преобразование регистра для строк.

Метод capitalize()

Метод capitalize() возвращает копию строки s, в которой первый символ имеет верхний регистр, а все остальные символы имеют нижний регистр.

Результатом выполнения следующего кода:

s = 'foO BaR BAZ quX'
print(s.capitalize())

будет:

Foo bar baz qux

Символы, не являющиеся буквами алфавита, остаются неизменными. Результатом выполнения следующего кода:

s = 'foo123#BAR#.'
print(s.capitalize())

будет:

Foo123#bar#.

Метод swapcase()

Метод swapcase() возвращает копию строки s, в которой все символы, имеющие верхний регистр, преобразуются в символы нижнего регистра и наоборот.

 Результатом выполнения следующего кода:

s = 'FOO Bar 123 baz qUX'
print(s.swapcase())

будет:

foo bAR 123 BAZ Qux

Метод title()

Метод title() возвращает копию строки s, в которой первый символ каждого слова переводится в верхний регистр.

Результатом выполнения следующего кода:

s = 'the sun also rises'
print(s.title())

будет:

The Sun Also Rises

Этот метод использует довольно простой алгоритм: он не пытается различить важные и неважные слова и не обрабатывает аббревиатуры и апострофы. Результатом выполнения следующего кода:

s = "what's happened to ted's IBM stock?"
print(s.title())

будет:

What'S Happened To Ted'S Ibm Stock?

 Метод lower()

Метод lower() возвращает копию строки s, в которой все символы имеют нижний регистр.

Результатом выполнения следующего кода:

s = 'FOO Bar 123 baz qUX'
print(s.lower())

будет:

foo bar 123 baz qux

Метод upper()

Метод upper() возвращает копию строки s, в которой все символы имеют верхний регистр.

Результатом выполнения следующего кода:

s = 'FOO Bar 123 baz qUX'
print(s.upper())

будет:

FOO BAR 123 BAZ QUX

Одно очень важное замечание о методах данной категории состоит в том, что они не изменяют исходную строку. Если вы хотите изменить строку s, нужно написать код: s = s.lower(). На самом деле тут вы создаёте совсем другой объект в памяти компьютера, просто он со старым названием s.

Примечание

Англо-русский словарик:
capitalize — писать прописными буквами, закрепить.
swapcase — обменять регистр. swap — гл. обмениваться, case — случай, регистр, падеж, дело, расследование...
title — заголовок, титул.
lower — нижний.
upper — верхний.

Пропустить Навигационные Ссылки.
Чтобы оставить комментарий нужна авторизация
Печать