В Python у объектов типа string имеется огромное количество методов для работы с ними. Они могут быть сгруппированы в два различных типа: первый — методы, которые модифицируют объект и создают новый, и второй — методы, которые предоставляют информацию об объекте.
Содержание
Строковые методы для изменения строки
string.capitalize() — изменяет строку, переводя все ЗАГЛАВНЫЕ буквы в строчные, кроме первой:
>>> string = 'This Is Some string' >>> print(string.capitalize()) This is some string
string.center(ширина, символ) — создаёт новую строку, окружённую символ (по-умолчанию — пробел) на ширина в точках:
>>> string = 'This Is Some string'
>>> print(string.center(100))
This Is Some string
>>> print(string.center(100, '.')) ........................................This Is Some string.........................................
string.encode(кодировка) — сменить кодировку символов на кодировка (по-умолчанию — ASCII), не работает в Python 2.6 и более ранних версиях (вызывает исключение TypeError: encode() takes no keyword arguments):
>>> string = 'This Is Some string' >>> print(string.encode(encoding='base64')) VGhpcyBJcyBTb21lIHN0cmluZw==
string.decode(кодировка) — то же, но наоборот:
>>> string = 'VGhpcyBJcyBTb21lIHN0cmluZw==' >>> print(string.decode(encoding='base64')) >>> This Is Some string
string.expandtabs(количество) — меняет количество символов в табуляции, если не указано количество — используется по-умолчанию 8:
>>> string = 'tThis Is Some stringt'
>>> print(string)
This Is Some string
>>> print(string.expandtabs(2))
This Is Some string
>>> print(string.expandtabs())
This Is Some string
string.join(последовательность) — возвращает строку, в которой элементы последовательности разделены строкой string:
>>> sequence = (' - ', ' - ', ' - ')
>>> string = 'This Is Some string'
>>> print(string.join(sequence))
- This Is Some string - This Is Some string -
string.ljust(количество, символы) — сдвигает левый край строки на количество точек, указанных в символы, по-умолчанию — пробелы:
>>> print(string.ljust(50, '-')) This Is Some string-------------------------------
string.rjust(количество, символы) — то же, но с правой стороны:
>>> print(string.rjust(50, '-')) -------------------------------This Is Some string
string.lstrip(символы) — возвращает строку, с обрезанными с левой стороны символами (по-умолчанию — пробелы):
>>> string = 'This Is Some string'
>>> print(string.lstrip('T'))
his Is Some string
string.rstrip(символы) — то же, но с правой стороны:
>>> print(string.rstrip('g'))
This Is Some strin
string.strip(символы) — выполняет lstrip() и rstrip() для символов, по-умолчанию — пробелы:
>>> string = ' This Is Some string ' >>> print(string.strip()) This Is Some string
>>> string = '-----This Is Some string-----'
>>> print(string.strip('-'))
This Is Some string
string.replace(старый, новый, количество) — возвращает стркоу, в которой меняет старые символы на новые, если указано — то на максимальное указанное количество совпадений:
>>> string = '11111 22222 33333'
>>> print(string.replace('1', '5'))
55555 22222 33333
>>> print(string.replace('1', '5', 2))
55111 22222 33333
string.swapcase() — инвертирует ЗАГЛАВНЫЕ в строчные, и наоборот:
>>> string = 'This Is Some String' >>> print(string.swapcase()) tHIS iS sOME sTRING
string.lower() — возвращает строку, в которой все символы переведены в строчные:
>>> string = 'This Is Some string' >>> print(string.lower()) this is some string
string.upper() — возвращает строку, в которой все символы переведены в ЗАГЛАВНЫЕ:
>>> string = 'This Is Some String' >>> print(string.upper()) THIS IS SOME STRING
string.title() — возвращает стркоу, в которой все первые символы элементов переведены в Заглавные («titlestyle«):
>>> string = 'This is some string' >>> print(string.title()) This Is Some String
Строковые методы, для получения информации об объекте
string.count(символ, начало, конец) — возвращает количество вхождений символа, начало-конец — опциональны, отсчёт с 0:
>>> string = 'This is some string'>>> print(string.count('T'))
1
>>> print(string.count('T', 0, 2))
1
>>> print(string.count('T', 2, 6))
0
>>> type(string.count('T', 2, 6))
<type 'int'>
string.startswith(символ, начало, конец) — возвращает True, если строка начинается с символа, начало-конец — опциональны:
>>> string = 'ia ia ia'
>>> string.startswith('i', 1, 3)
False
>>> string.startswith('i')
True
string.endswith(символ, начало, конец) — возвращает True, если строка заканчивается на символ, начало-конец — опциональны, отсчёт с нуля:
>>> string = 'This is some string'
>>> string.endswith('g')
True
>>> string.endswith('g', 0, 2)
False
string.find(символ, начало, конец) — возвращает индекс первого найденного символа, начало-конец — опциональны, или -1 — если не найдено
>>> string = 'This is some string'
>>> string.find('i')
2
>>> string.find('i', 3, 7)
5
>>> string.find('g', 0, 7)
-1
string.index(символ, начало, конец) — то же, что и find(), но вызывает ValueError в случае, если символ не найден:
>>> string.index('i')
2
>>> string.index('g', 0, 7)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: substring not found
string.rfind(символ, начало, конец) — возвращает последний (самый большой) индекс найденного символа, начало-конец — опциональны, -1 — если не найден:
>>> string = 'ia ia ia'
>>> string.rfind('i')
6
>>> string.rfind('i', 0, 2)
0
>>> string.rfind('i', 0, 3)
0
>>> string.rfind('i', 0, 4)
3
>>> string.rfind('i', 1, 3)
-1
string.rindex(символ, начало, конец) — то же, что и rfind(), но вызывает ValueError, если не найдено:
>>> string.rindex ('i')
6
>>> string.rindex('i')
6
>>> string.rindex('i', 1, 3)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: substring not found
string.isalnum() — возвращает True, если строка — буквенно-цифровая, и в ней есть хотя бы один символ:
>>> string = 'Alpha12345' >>> string.isalnum() True >>> string = '12345' >>> string.isalnum() True >>> string = '' >>> string.isalnum() False
string.isalpha() — возвращает True, если строка состоит только из букв:
>>> string = 'Alpha' >>> string.isalpha() True >>> string = '12345' >>> string.isalpha() False
string.isdigit() — то же, но наоборот:
>>> string = '12345' >>> string.isdigit() True >>> string = 'Alpha' >>> string.isdigit() False
string.islower() — возвращает True, если все символы — строчные:
>>> string = 'Alpha' >>> string.islower() False >>> string = 'alpha' >>> string.islower() True
string.isspace() — возвращает True, если все символы — пробелы:
>>> string = ' ' >>> string.isspace() True >>> string = ' a ' >>> string.isspace() False
string.istitle() — возвращает True, если все элементы начинаются с ЗАГЛАВНОЙ буквы:
>>> string = 'This Is Titled String' >>> string.istitle() True >>> string = 'this is titled string' >>> string.istitle() False >>> string = 'This is titled string' >>> string.istitle() False
string.isupper() — возвращает True, если все буквы ЗАГЛАВНЫЕ:
>>> string = 'UPPER STRING' >>> string.isupper() True >>> string = 'lower string' >>> string.isupper() False
string.partition(символ) — делит строку на три части одного кортежа, выделяя символ в отдельный элемент:
>>> string = 'This is string'
>>> string.partition('i')
('Th', 'i', 's is string')
string.split(символ) — возвращает список, вырезая символ:
>>> string = 'This is string'
>>> string.split('i')
['Th', 's ', 's str', 'ng']




