| Функция или метод | Назначение |
S = 'str'; S = «str»; S = 'str'; S = «»«str»«» | Литералы строк |
| S = «s\np\ta\nbbb» | Экранированные последовательности |
| S = r«C:\temp\new» | Неформатированные строки (подавляют экранирование) |
| S = b«byte» | Строка байтов |
| S1 + S2 | Конкатенация (сложение строк) |
| S1 * 3 | Повторение строки |
| S[i] | Обращение по индексу |
| S[i:j:step] | Извлечение среза |
| len(S) | Длина строки |
| S.find(str, [start],[end]) | Поиск подстроки в строке. Возвращает номер первого вхождения или -1 |
| S.rfind(str, [start],[end]) | Поиск подстроки в строке. Возвращает номер последнего вхождения или -1 |
| S.index(str, [start],[end]) | Поиск подстроки в строке. Возвращает номер первого вхождения или вызывает ValueError |
| S.rindex(str, [start],[end]) | Поиск подстроки в строке. Возвращает номер последнего вхождения или вызывает ValueError |
| S.replace(шаблон, замена) | Замена шаблона |
| S.split(символ) | Разбиение строки по разделителю |
| S.isdigit() | Состоит ли строка из цифр |
| S.isalpha() | Состоит ли строка из букв |
| S.isalnum() | Состоит ли строка из цифр или букв |
| S.islower() | Состоит ли строка из символов в нижнем регистре |
| S.isupper() | Состоит ли строка из символов в верхнем регистре |
| S.isspace() | Состоит ли строка из неотображаемых символов (пробел, символ перевода страницы ('\f'), «новая строка» ('\n'), «перевод каретки» ('\r'), «горизонтальная табуляция» ('\t') и «вертикальная табуляция» ('\v')) |
| S.istitle() | Начинаются ли слова в строке с заглавной буквы |
| S.upper() | Преобразование строки к верхнему регистру |
| S.lower() | Преобразование строки к нижнему регистру |
| S.startswith(str) | Начинается ли строка S с шаблона str |
| S.endswith(str) | Заканчивается ли строка S шаблоном str |
| S.join(список) | Сборка строки из списка с разделителем S |
| ord(символ) | Символ в его код ASCII |
| chr(число) | Код ASCII в символ |
| S.capitalize() | Переводит первый символ строки в верхний регистр, а все остальные в нижний |
| S.center(width, [fill]) | Возвращает отцентрованную строку, по краям которой стоит символ fill (пробел по умолчанию) |
| S.count(str, [start],[end]) | Возвращает количество непересекающихся вхождений подстроки в диапазоне [начало, конец] (0 и длина строки по умолчанию) |
| S.expandtabs([tabsize]) | Возвращает копию строки, в которой все символы табуляции заменяются одним или несколькими пробелами, в зависимости от текущего столбца. Если TabSize не указан, размер табуляции полагается равным 8 пробелам |
| S.lstrip([chars]) | Удаление пробельных символов в начале строки |
| S.rstrip([chars]) | Удаление пробельных символов в конце строки |
| S.strip([chars]) | Удаление пробельных символов в начале и в конце строки |
| S.partition(шаблон) | Возвращает кортеж, содержащий часть перед первым шаблоном, сам шаблон, и часть после шаблона. Если шаблон не найден, возвращается кортеж, содержащий саму строку, а затем две пустых строки |
| S.rpartition(sep) | Возвращает кортеж, содержащий часть перед последним шаблоном, сам шаблон, и часть после шаблона. Если шаблон не найден, возвращается кортеж, содержащий две пустых строки, а затем саму строку |
| S.swapcase() | Переводит символы нижнего регистра в верхний, а верхнего – в нижний |
| S.title() | Первую букву каждого слова переводит в верхний регистр, а все остальные в нижний |
| S.zfill(width) | Делает длину строки не меньшей width, по необходимости заполняя первые символы нулями |
| S.ljust(width, fillchar=« ») | Делает длину строки не меньшей width, по необходимости заполняя последние символы символом fillchar |
| S.rjust(width, fillchar=« ») | Делает длину строки не меньшей width, по необходимости заполняя первые символы символом fillchar |
| S.format(*args, **kwargs) | Форматирование строки |
s = 'hello' print(len(s)) #5 - 5 символов
Вернем в верхнем регистре только первую букву
s = 'HELLO' print(s.capitalize()) #Hello
центрировать шириной 20 символов
s = 'center' print(s.center(20)) #' center '
колличество символов(!) в строке
s = 'hello world!!!' print(s.count('!')) #3 - колличество символов(!) в строке, print(s.count('l')) #3 print(s.count('z')) #0 print(s.count('l', 0, 3)) #1 с диапазонм подстроки 0-3
ищем вхождение подстроки
s = 'hello world!!!' print(s.find('w')) #6 - ищем вхождение подстроки print(s.index('w')) #6 - аналог метода find, отличие возникает если метод не может найти подстроку.
Во втором случае метод выкидывает ошибку
замена подстроки
s = 'hello world!!!' print(s.replace('l', 'a')) #heaao worad!!!
Делить строку на подстроки
s = 'hello, world!!!' print(s.split()) #['hello', 'world!!!'] по умолчанию делит по пробелу print(s.split('l')) #['hello, ', 'orld!!!']
s = 'hello, world!!!' s.isdigit() #сотоит ли строка из цифр, bool s.isalpha() #состоит ли строка из букв, bool s.isalnum() #состоит ли строка из цифр или букв, bool s.islower() #состоит ли строка из символов в нижнем регистре, bool s.isupper() #состоит ли строка из символов в верхнем регистре, bool
(start, stop[, step])-> ::
start=None : Начальный индекс среза. Если не указан, используется индекс первого элемента «разрезаемого» объекта — `0`.
stop : Конечный индекс. Если не указан, используется индекс последнего элемента «разрезаемого» объекта.
step=None : Шаг выборки. Отрицательное значение позволяет строить срез из элементов в обратном порядке.
# «Берём срез строки» или # «Создаем объект среза и применяем к строке» 'самоходка'[4:1:-1] # 'хом' str = 'Hello wolrd' print(str[::-1])#Обратный шаг #drlow olleH
Возвращает строку, собранную из элементов указанного объекта, поддерживающего итерирование.
str.join(iterable) -> str
iterable : Объект со строками, поддерживающий итерирование. В качестве соединительного элемента между указанными элементами используется объект строки, у которого и вызывается данный метод.
dots = '..' my_str = dots.join(['1', '2']) # '1..2' my_str = dots.join('ab') # 'a..b'
Использование функции map
l = list(range(1, 10)) l2 = list('hello') print(l) #Для массовой обработки спиков необходимо использовать функцию map s = '-'.join(map(str, l)) print(s) s = ','.join(l2) print(s)