Регистр каждого символа меняется на противоположный.
"AbC".swapcase()
"aBc"
s.casefold()
Агрессивное приведение к нижнему регистру.
"Straße".casefold()
"strasse"
Проверить по документации:casefold() выходит за рамки исходного занятия.
Поиск подстроки
Метод
Описание
Пример
Результат
s.find(sub)
Индекс первого вхождения sub или -1.
"abc".find("b")
1
s.rfind(sub)
Индекс последнего вхождения sub или -1.
"ababa".rfind("a")
4
s.index(sub)
Индекс первого вхождения sub или ValueError.
"abc".index("b")
1
s.rindex(sub)
Индекс последнего вхождения sub или ValueError.
"ababa".rindex("a")
4
s.count(sub)
Количество непересекающихся вхождений sub.
"33333".count("33")
2
Замена подстрок
Метод
Описание
Пример
Результат
s.replace(old, new)
Заменяет все вхождения old на new.
"a-b-a".replace("a", "x")
"x-b-x"
s.replace(old, new, count)
Заменяет первые count вхождений.
"a-a-a".replace("a", "x", 2)
"x-x-a"
Разделение и объединение
Метод
Описание
Пример
Результат
s.split()
Разделяет по любым пробелам, удаляя пустые фрагменты.
"a b\tc".split()
['a', 'b', 'c']
s.split(sep)
Разделяет по указанному разделителю.
"a,b,c".split(",")
['a', 'b', 'c']
s.split(sep, maxsplit)
Ограничивает количество разбиений.
"a-b-c".split("-", 1)
['a', 'b-c']
s.rsplit(sep, maxsplit)
Разбивает справа.
"a-b-c".rsplit("-", 1)
['a-b', 'c']
s.splitlines()
Разбивает по символам перевода строки.
"a\nb\r\nc".splitlines()
['a', 'b', 'c']
sep.join(iterable)
Объединяет элементы, вставляя sep.
"-".join(["a", "b", "c"])
"a-b-c"
Проверить по документации:rsplit() и splitlines() выходят за рамки исходного занятия.
Удаление символов с краёв
Метод
Описание
Пример
Результат
s.strip()
Удаляет пробельные символы с обеих сторон.
" hi ".strip()
"hi"
s.lstrip()
Удаляет пробельные символы слева.
" hi ".lstrip()
"hi "
s.rstrip()
Удаляет пробельные символы справа.
" hi ".rstrip()
" hi"
s.strip(chars)
Удаляет указанные символы с обеих сторон.
"***hi***".strip("*")
"hi"
Предикатные методы
Метод
Описание
Пример
Результат
s.isalpha()
Только буквы (без пробелов и цифр).
"Hello".isalpha()
True
s.isdigit()
Только цифры.
"123".isdigit()
True
s.isalnum()
Только буквы и цифры.
"Hello123".isalnum()
True
s.isspace()
Только пробельные символы.
" ".isspace()
True
s.islower()
Все буквы в нижнем регистре.
"hello".islower()
True
s.isupper()
Все буквы в верхнем регистре.
"HELLO".isupper()
True
s.istitle()
Каждое слово начинается с заглавной буквы.
"Hello World".istitle()
True
s.startswith(prefix)
Строка начинается с prefix.
"hello".startswith("he")
True
s.endswith(suffix)
Строка заканчивается на suffix.
"hello".endswith("lo")
True
s.isdecimal()
Только десятичные цифры.
"12345²".isdecimal()
False
s.isnumeric()
Только числовые символы.
"½".isnumeric()
True
s.isascii()
Только символы ASCII.
"Привет".isascii()
False
s.isprintable()
Все символы печатаемые.
"a\n".isprintable()
False
s.isidentifier()
Допустимый идентификатор Python.
"1var".isidentifier()
False
Выравнивание и заполнение
Метод
Описание
Пример
Результат
s.center(width)
Центрирует строку, дополняя пробелами.
"hi".center(10)
" hi "
s.ljust(width, fill)
Прижимает влево, дополняя справа.
"hi".ljust(6, "-")
"hi----"
s.rjust(width, fill)
Прижимает вправо, дополняя слева.
"hi".rjust(6, ".")
"....hi"
s.zfill(width)
Дополняет нулями слева.
"42".zfill(5)
"00042"
Проверить по документации: методы выравнивания и заполнения выходят за рамки исходного занятия.
Удаление префиксов и суффиксов (Python 3.9+)
Метод
Описание
Пример
Результат
s.removeprefix(prefix)
Удаляет заданный префикс, если он есть.
"test_file.txt".removeprefix("test_")
"file.txt"
s.removesuffix(suffix)
Удаляет заданный суффикс, если он есть.
"file.txt".removesuffix(".txt")
"file"
Проверить по документации:removeprefix() и removesuffix() появились в Python 3.9 и выходят за рамки исходного занятия. Для более ранних версий используйте срезы или endswith()/startswith() с проверкой.