Все основные строковые функции в Python: виды, примеры и таблица
Главная » String Python
0
Python предоставляет множество встроенных функций для управления строками. Python String неизменяем, поэтому все эти функции возвращают новую строку, а исходная строка остается неизменной.
Есть много функций для работы со строкой. Однако запомнить их все нереально. Итак, здесь я делю их на разные категории:
- Обязательные строковые функции;
- Дополнительные строковые функции;
- Разные строковые функции;
- Встроенные функции, работающие со строкой;
- Полезные.
Содержание
- Обязательные строковые функции
- Дополнительные строковые функции
- Разные строковые функции
- Встроенные функции, работающие со строкой
- Полезные строковые операции
- Нужно ли их все запоминать?
Обязательные строковые функции
format() | |
split() | Функция string split() используется для разделения строки на список строк на основе разделителя. |
join() | Эта функция возвращает новую строку, которая является конкатенацией строк в итерируемом объекте со строковым объектом в качестве разделителя. |
strip() | Используется для удаления пробелов в строковом объекте. |
format_map() | Функция string format_map() возвращает отформатированную версию строки с использованием подстановок из предоставленного сопоставления. |
upper() | |
lower() | Эта функция создает новую строку в нижнем регистре. |
replace() | Функция string replace() используется для создания новой строки путем замены некоторых частей другой строки. |
find() | Метод String find() используется для поиска индекса подстроки в строке. |
translate() | Функция String translate() возвращает новую строку, в которой каждый символ в строке заменяется с использованием данной таблицы перевода. |
Дополнительные строковые функции
encode() | Функция string encode() используется для кодирования строки с использованием предоставленной кодировки. |
count() | Функция String count() возвращает количество вхождений подстроки в заданной строке. |
startwith() | Функция startwith() возвращает True, если строка начинается с заданного префикса, в противном случае возвращает False. |
stringndswith() | Функция stringndswith() возвращает True, если строка заканчивается заданным суффиксом, в противном случае возвращает False. |
capitalize() | Функция String capitalize() возвращает версию строки с заглавной буквы. |
center() | Функция string center() возвращает центрированную строку указанного размера. |
casefold() | Функция casefold() строки в Python возвращает копию строки в развернутом виде. Эта функция используется для сравнения строк без учета регистра. |
expandtabs() | Функция Python string expandtabs() возвращает новую строку, в которой символы табуляции (\t) заменены одним или несколькими пробелами. |
index() | Функция String index() возвращает наименьший индекс, в котором находится указанная подстрока. |
__contains__() | Класс String имеет функцию __contains __(), которую мы можем использовать, чтобы проверить, содержит ли он другую строку или нет. Мы также можем использовать оператор «in» для выполнения этой проверки. |
Разные строковые функции
isalnum() | Функция isalnum() Python возвращает True, если она состоит только из буквенно-цифровых символов. |
isalpha() | Функция String isalpha() возвращает True, если все символы в строке являются алфавитными, в противном случае – False. |
isdecimal() | Функция String isdecimal() возвращает True, если все символы в строке являются десятичными символами, в противном случае – False. |
isdigit() | Функция String isdigit() возвращает True, если все символы в строке являются цифрами, в противном случае – False. |
isidentifier() | Функция String isidentifier() возвращает True, если строка является допустимым идентификатором в соответствии с определением языка Python. |
islower() | Python String islower() возвращает True, если все символы в регистре в строке строчные и есть хотя бы один регистр, в противном случае он возвращает False. |
isnumeric() | Функция String isnumeric() возвращает True, если все символы в строке числовые, в противном случае – False. Если строка пуста, эта функция возвращает False. |
isprintable() | Функция String isprintable() возвращает True, если все символы в строке печатаются или строка пуста, в противном случае – False. |
isspace() | Функция Python isspace() возвращает True, если в строке есть только пробельные символы, в противном случае она возвращает False. |
список() | Python String istitle() возвращает True, если строка заключена в заголовок и не пуста, в противном случае возвращается False. |
isupper() | Функция String isupper() возвращает True, если все символы в регистре находятся в верхнем регистре. |
rjust(), ljust() | Служебные функции для создания новой строки указанной длины из исходной строки с выравниванием по правому и левому краю. |
swapcase() | Функция String swapcase() возвращает новую строку с символами верхнего регистра, преобразованными в нижний регистр и наоборот. |
partition() | Функция String partition() разбивает строку на основе разделителя на кортеж из трех строк. |
splitlines() | Функция String splitlines() возвращает список строк в строке. |
title() | Функция String title() возвращает версию строки в заголовке. |
zfill() | Функция String zfill (width) возвращает новую строку указанной ширины. Строка заполняется 0 с левой стороны для создания указанной ширины. |
Встроенные функции, работающие со строкой
len() | Длина строки может быть определена с помощью встроенной функции len(). |
ascii() | Функция ascii() возвращает строковое представление объекта. Эта функция внутренне вызывает функцию repr() и перед возвратом строки представления экранирует символы, отличные от ASCII, с помощью экранирования \x, \u или \U. |
bool() | Функция bool() возвращает логическое значение для объекта. У класса bool всего два экземпляра – True и False. |
bytearray() | Функция bytearray() возвращает объект bytearray, содержащий массив байтов из источника ввода. |
bytes() | Эта функция возвращает объект байтов, который представляет собой неизменяемую последовательность целых чисел в диапазоне 0 <= x <256. |
ord() | Функция ord() принимает строковый аргумент из одного символа Unicode и возвращает его целочисленное значение кодовой точки Unicode. |
enumerate() | Функция перечисления принимает последовательность, а затем превращает каждый элемент последовательности в кортеж. |
float() | Как следует из названия, функция python float() возвращает число с плавающей запятой из входного аргумента. |
hash() | Эта функция возвращает хеш-значение данного объекта. |
id() | Функция id() возвращает «идентичность» объекта. Идентификатор объекта – это целое число, которое гарантированно является уникальным и постоянным для этого объекта в течение его времени жизни. |
int() | Функция int() возвращает целочисленный объект из указанного ввода. Возвращаемый объект int всегда будет в базе 10. |
map() | Функция map() используется для применения функции ко всем элементам указанного итерируемого и возвращаемого объекта карты. |
print() | Функция print() используется для вывода данных в консоль. |
slice() | Функция slice() возвращает объект среза, представляющий набор индексов, заданных диапазоном (start, stop, step). |
type() | Эта функция возвращает тип объекта. |
Полезные строковые операции
- f-string в Python – новый и лучший способ форматирования строки, представленный в Python 3.6.
- Подстрока в Python.
- Создать случайную строку.
- Строковый модуль в Python.
- Необработанная строка.
- Многострочная строка.
- Проверка равенства строк.
- Сравнение строк.
- Конкатенация строк.
- Нарезка строки.
- Перевернуть строку.
- Строка для datetime – strptime().
- Преобразовать String в int.
- Преобразовать строку в байты.
- Преобразовать String в float.
- Преобразовать список в строку.
- Класс шаблона строки.
- Проверить, является ли переменная String.
- Объединить строку и int.
- Удалить символ из строки.
- Как добавить строки.
- Найти строку в списке.
- Удалить пробелы из строки.
Нужно ли их все запоминать?
Никто не может вспомнить их всех. Вы всегда можете найти их в своей IDE. Изображение ниже из моего файла PyCharm IDE builtins.py.
Рейтинг
( Пока оценок нет )
Васильев А.Н. / автор статьи
Помогаю в изучении Питона на примерах. Автор практических задач с детальным разбором их решений.
Комментарии0 Поделиться:Загрузка …
Строки. Функции и методы строк — Документация Python Summary 1
Базовые операции
# Конкатенация (сложение) >>> s1 = 'spam' >>> s2 = 'eggs' >>> print(s1 + s2) 'spameggs' # Дублирование строки >>> print('spam' * 3) spamspamspam # Длина строки >>> len('spam') 4 # Доступ по индексу >>> S = 'spam' >>> S[0] 's' >>> S[2] 'a' >>> S[-2] 'a' # Срез >>> s = 'spameggs' >>> s[3:5] 'me' >>> s[2:-2] 'ameg' >>> s[:6] 'spameg' >>> s[1:] 'pameggs' >>> s[:] 'spameggs' # Шаг, извлечения среза >>> s[::-1] 'sggemaps' >>> s[3:5:-1] '' >>> s[2::2] 'aeg'
Другие функции и методы строк
# Литералы строк 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) # Поиск подстроки в строке. Возвращает номер первого вхождения или -1 S.find(str, [start],[end]) # Поиск подстроки в строке. Возвращает номер последнего вхождения или -1 S.rfind(str, [start],[end]) # Поиск подстроки в строке. Возвращает номер первого вхождения или вызывает ValueError S.index(str, [start],[end]) # Поиск подстроки в строке. Возвращает номер последнего вхождения или вызывает ValueError S.rindex(str, [start],[end]) # Замена шаблона S.replace(шаблон, замена) # Разбиение строки по разделителю S.split(символ) # Состоит ли строка из цифр S.isdigit() # Состоит ли строка из букв S.isalpha() # Состоит ли строка из цифр или букв S.isalnum() # Состоит ли строка из символов в нижнем регистре S.islower() # Состоит ли строка из символов в верхнем регистре S.isupper() # Состоит ли строка из неотображаемых символов (пробел, символ перевода страницы ('\f'), "новая строка" ('\n'), "перевод каретки" ('\r'), "горизонтальная табуляция" ('\t') и "вертикальная табуляция" ('\v')) S.isspace() # Начинаются ли слова в строке с заглавной буквы S. istitle() # Преобразование строки к верхнему регистру S.upper() # Преобразование строки к нижнему регистру S.lower() # Начинается ли строка S с шаблона str S.startswith(str) # Заканчивается ли строка S шаблоном str S.endswith(str) # Сборка строки из списка с разделителем S S.join(список) # Символ в его код ASCII ord(символ) # Код ASCII в символ chr(число) # Переводит первый символ строки в верхний регистр, а все остальные в нижний S.capitalize() # Возвращает отцентрованную строку, по краям которой стоит символ fill (пробел по умолчанию) S.center(width, [fill]) # Возвращает количество непересекающихся вхождений подстроки в диапазоне [начало, конец] (0 и длина строки по умолчанию) S.count(str, [start],[end]) # Возвращает копию строки, в которой все символы табуляции заменяются одним или несколькими пробелами, в зависимости от текущего столбца. Если TabSize не указан, размер табуляции полагается равным 8 пробелам S.expandtabs([tabsize]) # Удаление пробельных символов в начале строки S.lstrip([chars]) # Удаление пробельных символов в конце строки S. rstrip([chars]) # Удаление пробельных символов в начале и в конце строки S.strip([chars]) # Возвращает кортеж, содержащий часть перед первым шаблоном, сам шаблон, и часть после шаблона. Если шаблон не найден, возвращается кортеж, содержащий саму строку, а затем две пустых строки S.partition(шаблон) # Возвращает кортеж, содержащий часть перед последним шаблоном, сам шаблон, и часть после шаблона. Если шаблон не найден, возвращается кортеж, содержащий две пустых строки, а затем саму строку S.rpartition(sep) # Переводит символы нижнего регистра в верхний, а верхнего – в нижний S.swapcase() # Первую букву каждого слова переводит в верхний регистр, а все остальные в нижний S.title() # Делает длину строки не меньшей width, по необходимости заполняя первые символы нулями S.zfill(width) # Делает длину строки не меньшей width, по необходимости заполняя последние символы символом fillchar S.ljust(width, fillchar=" ") # Делает длину строки не меньшей width, по необходимости заполняя первые символы символом fillchar S. rjust(width, fillchar=" ")
Форматирование строк
S.format(*args, **kwargs)
Примеры
Python: Определение позиции подстроки (функции str.find и str.rfind)
Определение позиции подстроки в строке с помощью функций str.find
и str.rfind
.
In [1]: str = 'ftp://dl.dropbox.com/u/7334460/Magick_py/py_magick.pdf'
Функция str.find
показывает первое вхождение подстроки. Все позиции возвращаются относительно начало строки.
In [2]: str.find('/') Out[2]: 4 In [3]: str[4] Out[3]: '/'
Можно определить вхождение в срезе. первое число показывает начало среза, в котором производится поиск. Второе число — конец среза. В случае отсутствия вхождения подстроки выводится -1.
In [4]: str.find('/', 8, 18) Out[4]: -1 In [5]: str[8:18] Out[5]: '.dropbox.c' In [6]: str.find('/', 8, 22) Out[6]: 20 In [7]: str[8:22] Out[7]: '.dropbox.com/u' In [8]: str[20] Out[8]: '/'
Функция str.rfind
осуществляет поиск с конца строки, но возвращает позицию подстроки относительно начала строки.
In [9]: str.rfind('/') Out[9]: 40 In [10]: str[40] Out[10]: '/'
Python: Извлекаем имя файла из URL
Понадобилось мне отрезать от URL всё, что находится после последнего слэша, т.е.названия файла. URL можеть быть какой угодно. Знаю, что задачу запросто можно решить с помощью специального модуля, но я хотел избежать этого. Есть, как минимум, два способа справиться с поставленным вопросом.
Способ №1
Достаточно простой способ. Разбиваем строку по слэшам с помощью функции split()
, которая возвращает список. А затем из этого списка извлекаем последний элемент. Он и будет названием файла.
In [1]: str = 'http://dl.dropbox.com/u/7334460/Magick_py/py_magick.pdf' In [2]: str.split('/') Out[2]: ['http:', '', 'dl.dropbox.com', 'u', '7334460', 'Magick_py', 'py_magick.pdf']
Повторим шаг с присвоением переменной:
In [3]: file_name = str.split('/')[-1] In [4]: file_name Out[4]: 'py_magick.pdf'
Способ №2
Второй способ интереснее. Сначала с помощью функции rfind()
находим первое вхождение с конца искомой подстроки. Функция возвращает позицию подстроки относительно начала строки. А далее просто делаем срез.
In [5]: str = 'http://dl.dropbox.com/u/7334460/Magick_py/py_magick.pdf' In [6]: str.rfind('/') Out[6]: 41
Делаем срез:
In [7]: file_name = str[42:] In [8]: file_name Out[8]: 'py_magick.pdf'
Дополнительные материалы
- Учим старую собаку новым трюкам или как я научился любить str.format и отказался от %
- Строки. Функции и методы строк
- Работа со строками в Python: литералы
- Погружение в Python 3 (Пилгрим)/Строки
Python: удаление не пустых папок Модуль os содержит ряд функций для работы с файлами, в том числе функции os.remove(path) os.removedirs(path) os.rmdir(path) Однако они могут удалять только пустые папки.
Для удаления не пустых папок нужно использовать модуль shutil и функцию из него shutil.rmtree(path, ignore_errors=False, onerror=None)
Работа со строками в Python — основные операции, функции и методы
Работа со строками в Python часто вызывает затруднение у школьников. Для начала стоит разобраться в том, что вообще такое строки.
Строки в программировании — это структура данных, каждый экземпляр объекта представляет собой последовательность символов, а не массив символов, поэтому замена символов невозможна. Однако, возможно разбить ее на символы.
С другой точки зрения, строка это любые текстовые данные (картинки очень сложно превратить в строку), которые мы видим на экране компьютера.
Действительно, все слова, числа, символы в Python можно выводить в виде строчек, и для нас ничего по большому счету не изменится, но для компьютера ситуация несколько иная.
Пример: вы никак не сможете складывать строки «2» и «5», потому что получите результат «25». Об этом случае и других мы поговорим в данной статье.
Содержание
- Создание строки в Python
- Форматирование отдельных частей строки в Python
- Основные операции со строками в Python
- Методы и функции
Создание строки в Python
В Python создание строки никогда не составляет особого труда. Однако к этому вопросу можно подойти с разных сторон, в зависимости от того, откуда вы будете брать данные для содержания данной строки.
Если вы бы хотели, чтобы пользователь сам вводил данную строку, то вам нужно будет считывать ее из консоли с помощью команды input().
Если в ваших планах всегда будет одна и та же строка, тогда вы можете просто присвоить к названию вашей строки ее значение.
Форматирование отдельных частей строки в Python
Данная функция применяется крайне редко, однако мы не можем ее не рассмотреть, ведь в некоторых моментах без нее просто не обойтись. Она работает довольно просто.
Вам просто нужно найти нужный участок в строке и поставить там значок %. Затем просто в после строки указать параметр для форматирования.
Основные операции со строками в Python
Вот какие операции со строками доступны в данном языке программирования:
Методы и функции
В Питоне, как мы уже говорили ранее, очень комфортно работать со строками. А происходит это из-за множества очень полезных встроенных функций для работы с ними.
Давайте же рассмотрим самые популярные из них:
Метод str — данный метод делает из любой структуры данных Python строку. Она добавит кавычки ко всему, к чему вы только захотите. Главное теперь не забывать, что вы имеете дело со строковым типом.
Метод find — этот следопыт пробежится по строке и найдет вам нужный символ или же их последовательность и сообщит вам его позицию (нумерация с 0).
Метод my_str.replace(s1, s2, count) — классная штука. Она поменяет первые count раз s1 или все ее вхождения в строку my_str на строку s2.
К примеру, у вас была строка «я специалист». Если вы примените функцию my_str.replace («специалист», «программист», 1), то получите строку «я программист»;
my_str = ‘barbarian’
my_str = my_str.replace(‘bar’, ‘mur’) # ‘murmurian’
my_str = my_str.replace(‘mur’, ‘bur’, 1) # ‘burmurian’
Метод split — он разделит вашу строку по указанному в скобках разделительному символу. Если оставите место пустым, то Питон разделит ее по пробелам, и получится список строк.
Для остальных функций мы перечислим только названия:
Мы и рассмотрели все самые популярные действия со строками в Python. В заключение хотелось бы отметить, что вне зависимости от того, новичок вы или продвинутый кодер, вам в любом случае стоит попробовать работу со строками именно в данном многофункциональном языке. Вы сразу почувствуете разницу и вам захочется изучить язык, если, конечно, вы этого еще не сделали.
Предыдущая
ИнформатикаРабота со списками в Рython — операции, методы и функции
Следующая
ИнформатикаJavascript — обучение для начинающих, основы и руководство
Работа со строками в Python
Работа со строками в Python — it-black.ruСтроки в Python – это упорядоченные последовательности символов, используемые для хранения и представления текстовой информации, поэтому с помощью строк можно работать со всем, что может быть представлено в текстовой форме.
Строки невозможно изменить – в этом случае говорят, что это immutable тип. Попытка изменить символ в определенной позиции или подстроку вызовет ошибку.
Литералы строк
Строковые литералы обычно представляют собой строку символов, заключённую в кавычки или скобки. В некоторых языках программирования выделяют символьные литералы, включающие один символ.
Строки в апострофах и в кавычках
S = 'spam"s' S = "spam's"
Строки в апострофах и в кавычках – одно и то же. Причина наличия двух вариантов в том, чтобы позволить вставлять в литералы строк символы кавычек или апострофов, не используя экранирование.
Экранированные последовательности
Экранированные последовательности позволяют вставить символы, которые сложно ввести с клавиатуры.
Экранированная последовательность | Назначение |
---|---|
\n | Перевод строки |
\a | Звонок |
\b | Забой |
\f | Перевод страницы |
\r | Возврат каретки |
\t | Горизонтальная табуляция |
\v | Вертикальная табуляция |
\N{id} | Идентификатор ID базы данных Юникода |
\uhhhh | 16-битовый символ Юникода в 16-ричном представлении |
\Uhhhh… | 32-битовый символ Юникода в 32-ричном представлении |
\xhh | 16-ричное значение символа |
\ooo | 8-ричное значение символа |
\0 | Символ Null (не является признаком конца строки) |
Если перед открывающей кавычкой стоит символ ‘r’ (в любом регистре), то механизм экранирования отключается. Например:
S = r'C:\newt.txt'
Строки в тройных апострофах или кавычках
Строки в тройных апострофах или кавычках используют для записи многострочных блоков текста. Внутри такой строки возможно присутствие кавычек и апострофов, главное, чтобы не было трех кавычек подряд. Например:
c = '''это очень большая строка, многострочный блок текста'" print(c) # Выведет: это очень большая строка, многострочный блок текста
Функции и методы строк
Конкатенация (сложение)
S1 = 'При' S2 = 'вет' print(S1 + S2) # Будет выведено: 'Привет'
Дублирование строки
print('Привет' * 3) # Выведет: ПриветПриветПривет
Длина строки (функция len)
len('Привет') # Выведет: 6
Доступ по индексу
S = 'Привет' S[0] # Выведет: 'П' S[2] # Выведет: 'и' S[-2] #Доступ к отрицательному индексу # Выведет: 'е'
В Python возможен и доступ по отрицательному индексу, при этом отсчет идет от конца строки.
Извлечение среза
Оператор извлечения среза: [X:Y]. X – начало среза, а Y – окончание. Cимвол с номером Y в срез не входит. По умолчанию первый индекс равен 0, а второй – длине строки.
s = 'spameggs' s[3:5] # Выведет: 'me' s[2:-2] # Выведет: 'ameg' s[:6] # Выведет: 'spameg' s[1:] # Выведет: 'pameggs' s[:] # Выведет: 'spameggs'
Форматирование строк
Иногда бывает нужно сделать строку, подставив в неё некоторые данные, полученные в процессе выполнения программы. Подстановку данных можно сделать с помощью форматирования строк. Форматирование можно сделать с помощью оператора %, либо с помощью метода format.
Если для подстановки требуется только один аргумент, то значение – сам аргумент. Например:
'Hello, {}!'.format('Vasya') # Будет выведено: 'Hello, Vasya!'
А если несколько, то значениями будут являться все аргументы со строками подстановки (обычных или именованных):
'{0}, {1}, {2}'. format('a', 'b', 'c') # Будет выведено: 'a, b, c' '{}, {}, {}'.format('a', 'b', 'c') # Будет выведено: 'a, b, c' '{2}, {1}, {0}'.format('a', 'b', 'c') # Будет выведено: 'c, b, a' '{2}, {1}, {0}'.format(*'abc') # Будет выведено: 'c, b, a' '{0}{1}{0}'.format('abra', 'cad') # Будет выведено: 'abracadabra' 'Coordinates: {latitude}, {longitude}'.format(latitude='37.24N', longitude='-115.81W') # Будет выведено: 'Coordinates: 37.24N, -115.81W' coord = {'latitude': '37.24N', 'longitude': '-115.81W'} 'Coordinates: {latitude}, {longitude}'.format(**coord) # Будет выведено: 'Coordinates: 37.24N, -115.81W'
Видео по строкам в Python:
Поделиться в facebook
Поделиться в twitter
Поделиться в vk
VK
Поделиться в google
Google+
- Виктор Черемных
- 19 августа, 2017
- 3 комментов
Группа в VK
Помощь проекту
Обнаружили опечатку?
Сообщите нам об этом, выделите текст с ошибкой и нажмите Ctrl+Enter, будем очень признательны!
Свежие статьи
Облако меток
Instagram Vk Youtube Telegram Odnoklassniki
Полезно знать
Рубрики
Авторы
© it-black.
ru | 2016 — 2022Строковые методы в Python. Узнаём популярные и эксклюзивные… | by Андрей Шагин | NOP::Nuances of Programming
Строка — это последовательность символов. Встроенный строковый класс в Python представлен строками, использующими универсальный набор символов Unicode. Строки реализуют часто встречающуюся последовательность операций в Python наряду с некоторыми дополнительными методами, которые больше нигде не встречаются. На картинке ниже показаны все эти методы:
Встроенные строковые функции в PythonДавайте узнаем, какие используются чаще всего. Важно заметить, что все строковые методы всегда возвращают новые значения, не меняя исходную строку и не производя с ней никаких действий.
Код для этой статьи можно взять из соответствующего репозитория Github Repository.
Метод center()
выравнивает строку по центру. Выравнивание выполняется с помощью заданного символа (пробела по умолчанию).
str. center(length, fillchar)
, где:
- length — это длина строки [обязательный параметр]
- fillchar—это символ, задающий выравнивание [на выбор]
Пример
Метод count()
возвращает счёт или число появлений в строке конкретного значения.
Синтаксис
str.count(value, start, end)
, где:
- value — это подстрока, которая должна быть найдена в строке [обязательный параметр]
- start — это начальное значение индекса в строке, где начинается поиск заданного значения [на выбор]
- end — это конечное значение индекса в строке, где завершается поиск заданного значения [на выбор]
Пример
Метод find()
возвращает наименьшее значение индекса конкретной подстроки в строке. Если подстрока не найдена, возвращается -1.
str. find(value, start, end)
, где:
- value или подстрока, которая должна быть найдена в строке [обязательный параметр]
- start — это начальное значение индекса в строке, где начинается поиск заданного значения [на выбор]
- end — это конечное значение индекса в строке, где завершается поиск заданного значения [на выбор]
Типы
rfind(): метод rfind() такой же, как find(), за исключением того, что он возвращает наибольшее значение индекса подстроки.
Пример
Метод swapcase() возвращает копию строки, преобразуя все заглавные буквы в строчные, и наоборот.
Синтаксис
string.swapcase()
Пример
Метод startswith()
возвращает True, если строка начинается с заданного значения. В противном случае возвращает False.
С другой стороны, функция endswith()
возвращает True, если строка заканчивается заданным значением. В противном случае возвращает False.
Синтаксис
string.startswith(value, start, end)
string.endsswith(value, start, end)
- value — это искомая строка в строке [обязательный параметр]
- start — это начальное значение индекса в строке, где начинается поиск заданного значения [на выбор]
- end — это конечное значение индекса в строке, где завершается поиск заданного значения [на выбор]
Пример
Метод split() возвращает список слов в строке, где разделителем по умолчанию является пробел.
Синтаксис
string.split(sep, maxsplit)
- sep: разделитель, используемый для разделения строки. Если не указано иное, разделителем по умолчанию является пробел [на выбор]
- maxsplit: обозначает количество разделений. Значение по умолчанию -1, что значит «все случаи» [на выбор]
Вариант
- rsplit(): разделяет строку справа.
Пример
1. capitalize( )
Метод capitalize() меняет на заглавную букву только первый символ строки.
Синтаксисstring.capitalize()
2. upper( )
Метод upper() делает заглавными все буквы в строке.
Синтаксисstring.upper()
3. string.title( )
Метод title() делает заглавными все первые буквы выбранной строки.
Синтаксисstring.title()
Пример
С помощью заданного символа (по умолчанию пробел) метод ljust() возвращает вариант выбранной строки с левым выравниванием. Метод rjust() выравнивает строку вправо.
Синтаксис
string.rjust/ljust(length, character)
- length: длина строки, которая должна быть возвращена [обязательный параметр]
- character: символ для заполнения незанятого пространства, по умолчанию являющийся пробелом [на выбор]
Пример
Метод strip() возвращает копию строки без первых и последних символов. Эти отсутствующие символы — по умолчанию пробелы.
Синтаксис
string.strip(character)
character: набор символов для удаления [на выбор]
Варианты
- rstrip(): удаляет символы с начала строки.
- lstrip(): удаляет символы с конца строки.
Метод zfill() добавляет нули в начале строки. Длина возвращаемой строки зависит от заданной ширины.
Синтаксис
string.zfill(width)
- width: указывает длину возвращаемой строки. Нули не добавляются, если параметр ширины меньше длины первоначальной строки.
Пример
В статье мы рассмотрели лишь некоторые встроенные строковые методы в Python. Есть и другие, не менее важные методы, с которыми при желании можно ознакомиться в соответствующей документации Python.
Перевод статьи Parul Pandey: Useful String Methods in Python
Python 3 #8: методы строк
Смотреть материал на видео
Как мы уже неоднократно говорили, в Python строки являются объектами и у этих объектов есть методы, то есть, функции, выполняющие определенные действия:
строка. имя_метода(аргументы)
Для примера, предположим, у нас имеется такая, уже классическая строка:
string = "Hello World!"
и мы собираемся для нее вызвать метод
String.upper()
который возвращает строку со всеми заглавными буквами. Для этого, пишется сама строка, ставится точка и записывается имя метода. В конце обязательно ставим круглые скобки:
string.upper()
Вот по такому синтаксису вызываются различные методы строк. Причем, сама переменная string продолжает ссылается на ту же самую неизмененную строку «Hello World!». Как мы с вами говорили на предыдущем занятии, строки – это неизменяемые объекты, поэтому метод upper возвращает новую строку с заглавными буквами, не меняя прежней.
Если бы нам потребовалось изменить строку, на которую ссылается переменная string, то это можно сделать так:
string = string. upper()
В этом случае переменная станет ссылаться на новый строковый объект с заглавными буквами, а прежний будет автоматически удален сборщиком мусора (так как на него не будет никаких внешних ссылок).
Также этот метод мы можем вызвать непосредственно у строкового литерала:
"hello".upper()
Так тоже можно делать.
Ну и раз уж мы затронули метод upper, который переводит буквы в верхний регистр, то отметим противоположный ему метод:
String.lower()
который, наоборот, преобразует все буквы в строчные. Например:
string.lower()
возвращает строку «hello world!». Соответственно, сама строка здесь остается прежней, измененным является новый строковый объект, который и возвращает метод lower. По такому принципу работают все методы при изменении строк. Следующий метод
String. count(sub[, start[, end]])
возвращает число повторений подстроки sub в строке String. Два необязательных аргумента:
- start – индекс, с которого начинается поиск;
- end – индекс, которым заканчивается поиск.
В самом простом случае, мы можем для строки
msg = "abrakadabra"
определить число повторений сочетаний «ra»:
msg.count("ra")
получим значение 2 – именно столько данная подстрока встречается в нашей строке.
Теперь предположим, что мы хотим начинать поиск с буквы k, имеющей индекс 4.
Тогда метод следует записать со значением start=4:
msg.count("ra", 4)
и мы получим значение 1. Далее, укажем третий аргумент – индекс, до которого будет осуществляться поиск. Предположим, что мы хотим дойти до 10-го индекса и записываем:
msg. count("ra", 4, 10)
и получаем значение 0. Почему? Ведь на индексах 9 и 10 как раз идет подстрока «ra»? Но здесь, также как и в срезах, последний индекс исключается из рассмотрения. То есть, мы говорим, что нужно дойти до 10-го, не включая его. А вот если запишем 11:
msg.count("ra", 4, 11)
то последнее включение найдется.
Следующий метод
String.find(sub[, start[, end]])
возвращает индекс первого найденного вхождения подстроки sub в строке String. А аргументы start и end работают также как и в методе count. Например:
msg.find("br")
вернет 1, т.к. первое вхождение «br» как раз начинается с индекса 1. Поставим теперь значение start=2:
msg.find("br", 2)
и поиск начнется уже со второго индекса. Получим значение 8 – индекс следующего вхождения подстроки «br». Если мы укажем подстроку, которой нет в нашей строке:
msg. find("brr")
то метод find возвращает -1. Третий аргумент end определяет индекс до которого осуществляется поиск и работает также как и в методе count.
Метод find ищет первое вхождение слева-направо. Если требуется делать поиск в обратном направлении: справа-налево, то для этого используется метод
String.rfind(sub[, start[, end]])
который во всем остальном работает аналогично find. Например:
msg.rfind("br")
возвратит 8 – первое вхождение справа.
Наконец, третий метод, аналогичный find – это:
String.index(sub[, start[, end]])
Он работает абсолютно также как find, но с одним отличием: если указанная подстрока sub не находится в строке String, то метод приводит к ошибке:
msg.index("brr")
тогда как find возвращает -1. Спрашивается: зачем нужен такой ущербный метод index? В действительности такие ошибки можно обрабатывать как исключения и это бывает полезно для сохранения архитектуры программы: когда неожиданные ситуации обрабатываются единым образом в блоке исключений. Но, обо всем этом речь пойдет позже.
Следующий метод
String.replace(old, new, count=-1)
Выполняет замену подстрок old на строку new и возвращает измененную строку. Например, в нашей строке, мы можем заменить все буквы a на o:
msg.replace("a", 'o')
на выходе получим строку «obrokodobro». Или, так:
msg.replace("ab", "AB")
Используя этот метод, можно выполнять удаление заданных фрагментов, например, так:
msg.replace("ab", "")
Третий необязательный аргумент задает максимальное количество замен. Например:
msg.replace("a", 'o', 2)
Заменит только первые две буквы a: «msg.replace(«a», ‘o’, 2)». При значении -1 количество замен неограниченно.
Следующие методы позволяют определить: из каких символов состоит наша строка. Например, метод
String. isalpha()
возвращает True, если строка целиком состоит из букв и False в противном случае. Посмотрим как он работает:
msg.isalpha()
вернет True, т.к. наша строка содержит только буквенные символы. А вот для такой строки:
"hello world".isalpha()
мы получим False, т.к. имеется символ пробела.
Похожий метод
String.isdigit()
возвращает True, если строка целиком состоит из цифр и False в противном случае. Например:
"5.6".isdigit()
т.к. имеется символ точки, а вот так:
"56".isdigit()
получим значение True. Такая проверка полезна, например, перед преобразованием строки в целое число:
dig = input("Введите число: ") if(dig.isdigit()): dig = int(dig) print(dig) else: print("Число введено неверно")
Следующий метод
String. rjust(width[, fillchar = ‘ ‘])
возвращает новую строку с заданным числом символов width и при необходимости слева добавляет символы fillchar:
d="abc" d.rjust(5)
Получаем строку « abc» с двумя добавленными слева пробелами. А сама исходная строка как бы прижимается к правому краю. Или, можно сделать так:
d.rjust(5, "-")
Получим строку «—abc». Причем вторым аргументом можно писать только один символ. Если записать несколько, то возникнет ошибка:
d.rjust(5, "-*")
Если ширина width будет меньше длины строки:
d.rjust(2)
то ничего не изменится. Аналогично работает метод
String.ljust(width[, fillchar = ‘ ‘])
который возвращает новую строку с заданным числом символов width, но добавляет символы fillchar уже справа:
d.ljust(10, "*")
Следующий метод
String. split(sep=None, maxsplit=-1)
возвращает коллекцию строк, на которые разбивается исходная строка String. Разбивка осуществляется по указанному сепаратору sep. Например:
"Иванов Иван Иванович".split(" ")
Мы здесь разбиваем строку по пробелам. Получаем коллекцию из ФИО. Тот же результат будет и при вызове метода без аргументов, то есть, по умолчанию он разбивает строку по пробелам:
"Иванов Иван Иванович".split()
А теперь предположим, перед нами такая задача: получить список цифр, которые записаны через запятую. Причем, после запятой может быть пробел, а может и не быть. Программу можно реализовать так:
digs = "1, 2,3, 4,5,6" digs.replace(" ", "").split(",")
мы сначала убираем все пробелы и для полученной строки вызываем split, получаем список цифр.
Обратный метод
String.join(список)
возвращает строку из объединенных элементов списка, между которыми будет разделитель String. Например:
d = digs.replace(" ", "").split(",") ", ".join(d)
получаем строку «1, 2, 3, 4, 5, 6». Или так, изначально была строка:
fio = "Иванов Иван Иванович"
и мы хотим здесь вместо пробелов поставить запятые:
fio2 = ",".join(fio.split())
Теперь fio2 ссылается на строку с запятыми «Иванов,Иван,Иванович».
Следующий метод
String.strip()
удаляет пробелы и переносы строк в начале и конце строки. Например:
" hello world \n".strip()
возвращает строку «hello world». Аналогичные методы:
String.rtrip() и String.ltrip()
удаляют пробелы и переносы строк только справа и только слева.
Вот такие методы строк существуют в Python. Для наглядности ниже они представлены в таблице:
Название |
Описание |
String. upper() |
Возвращает строку с заглавными буквами |
String.lower() |
Возвращает строку с малыми буквами |
String.count(sub[, start[, end]]) |
Определяет число вхождений подстроки в строке |
String.find(sub[, start[, end]]) |
Возвращает индекс первого найденного вхождения |
String.rfind(sub[, start[, end]]) |
Возвращает индекс первого найденного вхождения при поиске справа |
String.index(sub[, start[, end]]) |
Возвращает индекс первого найденного вхождения |
String. replace(old, new, count=-1) |
Заменяет подстроку old на new |
String.isalpha() |
Определяет: состоит ли строка целиком из буквенных символов |
String.isdigit() |
Определяет: состоит ли строка целиком из цифр |
String.rjust(width[, fillchar = ‘ ‘]) |
Расширяет строку, добавляя символы слева |
String.ljust(width[, fillchar = ‘ ‘]) |
Расширяет строку, добавляя символы справа |
String.split(sep=None, maxsplit=-1) |
Разбивает строку на подстроки |
String. join(список) |
Объединяет коллекцию в строку |
String.strip() |
Удаляет пробелы и переносы строк справа и слева |
String.rstrip() |
Удаляет пробелы и переносы строк справа |
String.ltrip() |
Удаляет пробелы и переносы строк слева |
1. Написать программу корректности ввода телефонного номера по шаблону:
x(xxx)xxxxxx
где x – любая цифра от 0 до 9. Данные представлены в виде строки.
2. Написать программу изменения строки
«2+3+6.7 + 82 + 5. 7 +1″
на строку, в которой все «+» заменены на «-» и удалены все пробелы
3. Написать программу вывода чисел 0; -100; 5.6; -3 в виде столбца:
0 -100 5.6 -3
в котором все строки выровнены по правому краю (подсказка: воспользуйтесь методом rjust).
4. В строке «abrakadabra» найдите все индексы подстроки «ra» и выведите их (индексы) в консоль.
Видео по теме
#1. Первое знакомство с Python Установка на компьютер
#2. Варианты исполнения команд. Переходим в PyCharm
#3. Переменные, оператор присваивания, функции type и id
#4. Числовые типы, арифметические операции
#5. Математические функции и работа с модулем math
#6. Функции print() и input(). Преобразование строк в числа int() и float()
#7. Логический тип bool. Операторы сравнения и операторы and, or, not
#8. Введение в строки. Базовые операции над строками
#9. Знакомство с индексами и срезами строк
#10. Основные методы строк
#11. Спецсимволы, экранирование символов, row-строки
#12. Форматирование строк: метод format и F-строки
#13. Списки — операторы и функции работы с ними
#14. Срезы списков и сравнение списков
#15. Основные методы списков
#16. Вложенные списки, многомерные списки
#17. Условный оператор if. Конструкция if-else
#18. Вложенные условия и множественный выбор. Конструкция if-elif-else
#19. Тернарный условный оператор. Вложенное тернарное условие
#20. Оператор цикла while
#21. Операторы циклов break, continue и else
#22. Оператор цикла for. Функция range()
#23. Примеры работы оператора цикла for. Функция enumerate()
#24. Итератор и итерируемые объекты. Функции iter() и next()
#25. Вложенные циклы. Примеры задач с вложенными циклами
#26. Треугольник Паскаля как пример работы вложенных циклов
#27. Генераторы списков (List comprehensions)
#28. Вложенные генераторы списков
#29. Введение в словари (dict). Базовые операции над словарями
#30. Методы словаря, перебор элементов словаря в цикле
#31. Кортежи (tuple) и их методы
#32. Множества (set) и их методы
#33. Операции над множествами, сравнение множеств
#34. Генераторы множеств и генераторы словарей
#35. Функции: первое знакомство, определение def и их вызов
#36. Оператор return в функциях. Функциональное программирование
#37. Алгоритм Евклида для нахождения НОД
#38. Именованные аргументы. Фактические и формальные параметры
#39. Функции с произвольным числом параметров *args и **kwargs
#40. Операторы * и ** для упаковки и распаковки коллекций
#41. Рекурсивные функции
#42. Анонимные (lambda) функции
#43. Области видимости переменных. Ключевые слова global и nonlocal
#44. Замыкания в Python
#45. Введение в декораторы функций
#46. Декораторы с параметрами. Сохранение свойств декорируемых функций
#47. Импорт стандартных модулей. Команды import и from
#48. Импорт собственных модулей
#49. Установка сторонних модулей (pip install). Пакетная установка
#50. Пакеты (package) в Python. Вложенные пакеты
#51. Функция open. Чтение данных из файла
#52. Исключение FileNotFoundError и менеджер контекста (with) для файлов
#53. Запись данных в файл в текстовом и бинарном режимах
#54. Выражения генераторы
#55. Функция-генератор. Оператор yield
#56. Функция map. Примеры ее использования
#57. Функция filter для отбора значений итерируемых объектов
#58. Функция zip. Примеры использования
#59. Сортировка с помощью метода sort и функции sorted
#60. Аргумент key для сортировки коллекций по ключу
#61. Функции isinstance и type для проверки типов данных
#62. Функции all и any. Примеры их использования
#63. Расширенное представление чисел. Системы счисления
#64. Битовые операции И, ИЛИ, НЕ, XOR. Сдвиговые операторы
#65. Модуль random стандартной библиотеки
Строковые методы Python
❮ Предыдущая Далее ❯
В Python есть набор встроенных методов, которые можно использовать со строками.
Примечание: Все строковые методы возвращают новые значения. Они не изменяют исходную строку.
Метод | Описание |
---|---|
capitalize() | Преобразует первый символ в верхний регистр |
casefold() | Преобразует строку в нижний регистр |
center() | Возвращает центрированное строка |
count() | Возвращает количество раз указанное значение встречается в строке |
encode() | Возвращает закодированный версия строки |
endwith() | Возвращает истину, если строка заканчивается указанным значением |
expandtabs() | Устанавливает размер табуляции строки |
find() | Ищет в строке указанное значение и возвращает позицию, где оно было найдено |
format() | Форматы указаны значения в строке |
format_map() | Форматы указаны значения в строке |
index() | Поиск строки для указанного значения и возвращает позицию, в которой оно было найдено |
isalnum() | Возвращает True, если все символы в строке буквенно-цифровые |
isalpha() | Возвращает True, если все символы в строке находятся в алфавите |
isascii() | Возвращает True, если все символы в строке являются символами ascii |
isdecimal() | Возвращает True, если все символы в строке десятичные |
isdigit() | Возвращает True, если все символы в строке цифры |
isidentifier() | Возвращает True, если строка является идентификатором |
islower() | Возвращает True, если все символы в строке в нижнем регистре |
isnumeric() | Возвращает True, если все символы в строке числовые |
isprintable() | Возвращает True, если все символы в строке доступны для печати |
isspace() | Возвращает True, если все символы в строке являются пробелами |
istitle() | Возвращает True, если строка соответствует правилам название |
isupper() | Возвращает True, если все символы в строке в верхнем регистре |
join() | Преобразует элементы итерация в строку |
просто() | Возвращает выравнивание по левому краю версия строки |
lower() | Преобразует строку в нижний регистр |
lstrip() | Возвращает обрезку слева версия строки |
maketrans() | Возвращает таблица перевода для использования в переводах |
partition() | Возвращает кортеж где строка разделена на три части |
replace() | Возвращает строку где указанное значение заменяется указанным значением |
rfind() | Ищет строку для указанное значение и возвращает последнюю позицию, где оно было найдено |
rindex() | Ищет строку для указанное значение и возвращает последнюю позицию, где оно было найдено |
rjust() | Возвращает выравнивание по правому краю версия строки |
rpartition() | Возвращает кортеж где строка разделена на три части |
rsplit() | Разбивает строку в указанный разделитель и возвращает список |
rstrip() | Возвращает правую обрезку версия строки |
split() | Разбивает строку в указанный разделитель и возвращает список |
линии разделения() | Разделяет строку на разрывах строк и возвращает список |
начинает с() | Возвращает истину, если строка начинается с указанного значения |
strip() | Возвращает урезанную версию строки |
swapcase() | Обмен регистрами, нижний регистр становится заглавным и наоборот |
title() | Преобразует первый символ каждого слова в верхний регистр |
translate() | Возвращает переведенная строка |
upper() | Преобразует строку в верхний регистр |
zfill() | Заполняет строку указанное количество нулевых значений в начале |
Примечание: Все строковые методы возвращают новые значения. Они не изменяют исходную строку.
Узнайте больше о строках в нашем учебнике по строкам Python.
❮ Предыдущий Далее ❯
НОВИНКА
Мы только что запустили
Видео W3Schools
Узнать
ВЫБОР ЦВЕТА
КОД ИГРЫ
Играть в игру
Top Tutorials
Учебник HTMLУчебник CSS
Учебник JavaScript
Учебник How To
Учебник SQL
Учебник Python
Учебник W3.CSS
Учебник Bootstrap
Учебник PHP
Учебник Java
Учебник C++
Учебник по jQuery
Основные ссылки
Справочник по HTMLСправочник по CSS
Справочник по JavaScript
Справочник по SQL
Справочник по Python
Справочник по W3.CSS
Справочник по Bootstrap
Справочник по PHP
Цвета HTML
Справочник по Java
Справочник по Angular
Справочник по jQuery
Примеры HTML
Примеры CSS
Примеры JavaScript
Примеры инструкций
Примеры SQL
Примеры Python
Примеры W3. CSS
Примеры Bootstrap
Примеры PHP
Примеры Java
Примеры XML
Примеры jQuery
FORUM | О
W3Schools оптимизирован для обучения и обучения. Примеры могут быть упрощены для улучшения чтения и обучения. Учебники, ссылки и примеры постоянно пересматриваются, чтобы избежать ошибок, но мы не можем гарантировать полную правильность всего содержания. Используя W3Schools, вы соглашаетесь прочитать и принять наши условия использования, куки-файлы и политика конфиденциальности.
Copyright 1999-2022 Refsnes Data. Все права защищены.
W3Schools работает на основе W3.CSS.
Формат строки Python () Метод
❮ Строковые методы
Пример
Вставьте цену в местозаполнитель, цена должна быть в формате с двумя десятичными знаками с фиксированной точкой:
txt = «Всего за {цена:.2f} долларов!»
print(txt.format(price = 49))
Попробуйте сами »
Определение и использование
format()
метод форматирует указанный
значение(я) и вставьте их в местозаполнитель строки.
Заполнитель определяется с помощью фигурных скобок: {}. Узнайте больше о заполнители в разделе «Заполнители» ниже.
Метод format()
возвращает форматированный
нить.
Синтаксис
строка .format( значение1, значение2… )
Значения параметров
Параметр | Описание |
---|---|
значение1, значение2… | Обязательно. Одно или несколько значений, которые следует отформатировать и вставить в
Струна. Значения представляют собой список значений, разделенных запятыми, список ключей=значений или их комбинация. Значения могут относиться к любому типу данных. |
Заполнители
Заполнители можно идентифицировать с помощью именованных индексов {цена}
, номер
индексы {0}
или даже пустые заполнители {}
.
Пример
Использование разных значений заполнителей:
txt1 = «Мой
имя {fname}, я {возраст}». format(fname = «Джон», возраст = 36)
txt2 = «Мой
имя {0}, я {1}».format(«Джон»,36)
txt3 = «Мой
имя {}, я {}».format(«John»,36)
Попробуйте сами »
Типы форматирования
результат: 9
:=
:+
:-
:
:,
:_
:б
:с
:д
:е
:Е
:ф
:F
инф
и нан
как INF
и НАН
) :г
:G
:о
:х
:Х
:n
:%
❮ Строковые методы
NEW
Мы только что выпустили
Видео W3Schools
Узнать
COLOR PICKER
КОД ИГРЫ
Играть в игру
Top Tutorials
Учебник по HTMLУчебник по CSS
Учебник по JavaScript
Учебник How To
Учебник по SQL
Учебник по Python
Учебник по W3. CSS
Учебник по Bootstrap
Учебник по PHP
Учебник по Java
Учебник по C++
Учебник по jQuery
Лучшие ссылки
Справочник по HTMLСправочник по CSS
Справочник по JavaScript
Справочник по SQL
Справочник по Python
Справочник по W3.CSS
Справочник по Bootstrap
Справочник по PHP
Цвета HTML
Справочник по Java
Справочник по Angular
Справочник по jQuery
Примеры HTML
Примеры CSS
Примеры JavaScript
Примеры инструкций
Примеры SQL
Примеры Python
Примеры W3.CSS
Примеры Bootstrap
Примеры PHP
Примеры Java
Примеры XML
Примеры jQuery
FORUM | О
W3Schools оптимизирован для обучения и обучения. Примеры могут быть упрощены для улучшения чтения и обучения. Учебники, ссылки и примеры постоянно пересматриваются, чтобы избежать ошибок, но мы не можем гарантировать полную правильность всего содержания. Используя W3Schools, вы соглашаетесь прочитать и принять наши условия использования, куки-файлы и политика конфиденциальности.
Copyright 1999-2022 Refsnes Data. Все права защищены.
W3Schools работает на основе W3.CSS.
Строковые методы Python — GeeksforGeeks
Просмотреть обсуждение
Улучшить статью
Сохранить статью
- Уровень сложности: Easy
- Последнее обновление: 29 дек, 2021
Посмотреть обсуждение
Улучшить статью
Сохранить статью
Строка Python — это последовательность символов Юникода, заключенная в кавычки. В этой статье мы обсудим встроенную функцию, то есть функции, предоставляемые Python для работы со строками.
Примечание: Каждый строковый метод не изменяет исходную строку, вместо этого возвращает новую строку с измененными атрибутами.
Изменение регистра строк
Следующие функции используются для изменения регистра строк.
- ниже(): Преобразует все символы верхнего регистра в строке в нижний регистр
- upper(): Преобразует все символы нижнего регистра в строке в верхний регистр
- title(): Преобразует строку в регистр заголовка строк Python.
Python3
Текст
=
'Geeks for Geeks'
.0390 "\nConverted String:"
)
print
(text.upper())
print
(
"\nConverted String:"
)
print
(text. lower())
print
(
"\nConverted String:"
)
print
(text.title())
распечатать
(
"\ щетковая строка"
)
Печать
(Текст)
Выход: 9003
. ГИКИ ДЛЯ ГИКОВ Преобразованная строка: гики для гиков Преобразованная строка: Компьютерщики для компьютерщиков Исходная строка для гиков
Таблица строковых методов Python
Имя функции Описание capitalize() Преобразует первый символ строки в заглавную (верхнюю) букву casefold() Реализует сопоставление строк без регистра center() Дополняет строку указанным символом. count() Возвращает количество вхождений подстроки в строку. encode() Кодирует строки по указанной схеме кодирования endwith() Возвращает «True», если строка заканчивается заданным суффиксом expandtabs() Задает количество пробелов, которые необходимо заменить символом «\t» в строке find () Возвращает наименьший индекс подстроки, если она найдена format() Форматирует строку для вывода на консоль index() Возвращает позицию первого вхождения подстроки в строку isalnum() Проверяет, все ли символы в заданной строке являются буквенно-цифровыми или нет 9 ) Возвращает «True», если все символы в строке являются буквами алфавита isdecimal() Возвращает true, если все символы в строке являются десятичными isdigit() Возвращает «True», если все символы в строке являются цифрами isidentifier() Проверяет, является ли строка допустимым идентификатором или нет 100020 isspace() Возвращает «Истина», если все символы в строке являются пробелами Проверяет, все ли символы в строке в верхнем регистре join() Возвращает объединенную строку ljust() Выравнивает строку по левому краю в соответствии с указанной шириной lower() Converts all uppercase characters in a string into lowercase lstrip() Returns the string with leading characters removed maketrans() Returns a translation table partition() Разбивает строку при первом появлении разделителя replace() Заменяет все вхождения подстроки другой подстрокой RFIND () Возвращает самый высокий индекс подстроения RINDEX () Возвращает самый высокий индекс подвески внутри строки RJUST () . Строка. указанная ширина rpartition() Разделить данную строку на три части rsplit() Разделить строку справа по указанному разделителю RSTRIP () Снятие символов следа Splitlines () Сплит линии на границах линии Startswith () возвращает «True”, если Artring начинается с Date Dase Dase Dase Dase Dase Dase Dase Dase Dase Dase Dase Dase Dase Dase Dase Dase Dase Dase Dase Dase Dase Dase Dase Dase Dase Dase Dase Dase Dase Dase Dase Dase Dase. strip() Возвращает строку с начальными и конечными символами swapcase() Преобразует все символы верхнего регистра в нижний и наоборот заголовок () Преобразовать строку в титул корпус Translate () Модифицируйте строку в соответствии с данными сопоставлениями перевода Верхний () Конвертирует все нижние символы в строке в верхнем примере . zfill() Возвращает копию строки с символами ‘0’, дополненными слева от строки Примечание. Дополнительные сведения о строках Python см. в Учебном руководстве по строкам Python.
Следующий
string capitalize() в Python
Рекомендуемые статьи
Страница :
Строковые методы Python | Набор 1 (найти, rfind, startwith, endwith, islower, isupper, lower, upper, swapcase и title)
13, 16 июля
Строковые методы Python | Набор 3 (strip, lstrip, rstrip, min, max, maketrans, translate, replace & expandtabs())
15, 16 июля
Строковые методы Python | Набор 2 (len, count, center, ljust, rjust, isalpha, isalnum, isspace & join)
15, 16 июля
Список методов в Python | Набор 2 (del, remove(), sort(), insert(), pop(), extend()…)
23, 16 июля
31 важный строковый метод в Python, который вы должны знать
Строки важный тип данных в Python, который используется почти во всех приложениях. В этой статье мы узнаем о наиболее важных встроенных строковых методах.
С помощью этого ресурса вы получите все советы и знания, необходимые для легкой работы со строками, и вы сможете без проблем их модифицировать.
1. Нарезка
С помощью нарезки мы можем получить доступ к подстрокам. Он может получить необязательные начальные и конечные индексы.
с = 'привет' s = s[3:8] # без сбоя, если s[3:20] # 'hello'
2. strip()
Возвращает копию строки с удаленными начальными и конечными символами. Аргумент chars представляет собой строку, определяющую набор удаляемых символов. Если он опущен или None, аргумент chars по умолчанию удаляет пробелы.
s = 'привет'.strip() # 'привет'
3./4. lstrip() и rstrip()
lstrip([chars])
: вернуть копию строки с удаленными начальными символами.rtrip([символы])
: вернуть копию строки с удаленными завершающими символами.s = 'привет'. lstrip() # 'привет ' s = 'привет'.rstrip() # ' привет'
strip() с символом
Мы можем указать символы вместо удаления пробелов по умолчанию.
s = '###привет###'.strip('#') # 'привет'
Осторожно: удаляются только начальные и конечные найденные совпадения:
s = ' \n \t hello\n'.strip('\n') # -> не ведущий, поэтому первый \n не удаляется! # '\n \t привет' s = '\n\n \t привет\n'.strip('\n') # ' \t hello'
strip() с комбинацией символов
Аргумент chars представляет собой строку, определяющую набор удаляемых символов. Таким образом, удаляются все вхождения этих символов, а не конкретная заданная строка.
s = 'www.example.com'.strip('cmow.') # 'пример'
5./6. removeprefix() и removesuffix()
Как и ранее, функции strip, lstrip и rstrip удаляют все вхождения переданной строки символов. Поэтому, если мы просто хотим удалить данную строку, мы можем использовать префикс удаления и удаление суффикса.
s = 'Артур: три!'.lstrip('Артур: ') # 'Э-э!' s = 'Артур: три!'.removeprefix('Артур: ') # 'три!' s = 'HelloPython'.removesuffix('Python') # 'Здравствуйте'
7. replace()
Возвращает копию строки, в которой все вхождения старой подстроки заменены новой.
s = '\n \t привет\n'.replace('\n', '') # ' \t hello'
8. re.sub()
Если мы хотим заменить определенный шаблон другим символом, мы можем использовать модуль re и регулярное выражение.
импорт s = "строковые методы в питоне" s2 = re.sub("\s+", "-", s) # 'строковые методы в питоне'
Подробнее о регулярных выражениях можно узнать из этого ускоренного курса.
9. split()
Возвращает список слов в строке, используя sep в качестве строки-разделителя. Если указано значение maxsplit, выполняется не более maxsplit.
s = 'строковые методы в python'.split() # ['строка', 'методы', 'в', 'питон'] s = 'строковые методы в python'. split(' ', maxsplit=1) # ['string', 'methods in python']
10. rsplit()
Возвращает список слов в строке, используя sep в качестве строки-разделителя. Если задано значение maxsplit, выполняется не более maxsplit, самые правые.
s = 'строковые методы в python'.rsplit() # ['строка', 'методы', 'в', 'питон'] s = 'строковые методы в python'.rsplit(' ', maxsplit=1) # ['строковые методы в', 'python']
11. join()
Возвращает строку, которая является конкатенацией строк в итерации.
list_of_strings = ['строка', 'методы', 'в', 'питон'] s = ' '.join(list_of_strings) # 'строковые методы в питоне'
12./13./14. верхний(), нижний(), капитализировать()
Возвращает копию строки, в которой все символы в регистре преобразованы в верхний или нижний регистр или первый символ в верхнем регистре, а остальные в нижнем регистре.
s = 'Питон потрясающий!'.upper() # 'ПИТОН ПОТРЯСАЮЩИЙ!' s = 'ПИТОН ПОТРЯСАЮЩИЙ!'. lower() # 'питон потрясающий!' s = 'Питон потрясающий!'.capitalize() # 'Питон потрясающий!'
15./16. islower(), isupper()
Проверяет, состоит ли строка только из символов верхнего или нижнего регистра.
'ПИТОН ПОТРЯСАЮЩИЙ!'.islower() # False 'Питон потрясающий!'.islower() # Верно 'ПИТОН КРУТО!'.isupper() # Верно 'ПИТОН КРУТОЙ!'.isupper() # False
17./18./19. isalpha(), isnumeric(), isalnum()
isalpha()
: Возвращает True, если все символы в строке являются буквенными и есть хотя бы один символ, False в противном случае.isnumeric()
: Возвращает True, если все символы в строке являются числовыми и есть хотя бы один символ, в противном случае возвращает False.isalnum()
: Вернуть True, если все символы в строке буквенно-цифровые и есть хотя бы один символ, False в противном случае.с = 'питон' печать (s.isalpha(), s.isnumeric(), s.isalnum()) # Верно Ложно Верно s = '123'print(s. isalpha(), s.isnumeric(), s.isalnum()) # Ложь Истина Истина с = 'питон123' печать (s.isalpha(), s.isnumeric(), s.isalnum()) # Ложь Ложь Истина с = 'питон-123' печать (s.isalpha(), s.isnumeric(), s.isalnum()) # False False False
20. count()
Возвращает количество неперекрывающихся вхождений подстроки sub в диапазоне [начало, конец].
n = 'привет, мир'.count('o') № 2
21. find()
Возвращает наименьший индекс в строке, в которой найдена подстрока в срезе s[начало:конец].
s = «Машинное обучение» idx = s.find('a') печать (idx) # 1 print(s[idx:]) # 'машинное обучение' idx = s.find('a', 2) печать (idx) # 10 print(s[idx:]) # 'arning'
22. rfind()
Возвращает наивысший индекс в строке, в которой найдена подстрока, так что подстрока содержится в s[start:end].
s = «Машинное обучение» idx = s.rfind('a') печать (idx) # 10
23./24. startwith() и endwith()
Возвращает True, если строка начинается/заканчивается префиксом/суффиксом, в противном случае возвращает False.
s = 'Patrick'.startswith('Pat') # с учетом регистра! # Истинный s = 'Patrick'.endswith('k') # с учетом регистра! # True
25. partition()
Разделить строку при первом появлении sep и вернуть тройку, содержащую часть до разделителя, сам разделитель и часть после разделителя. Если разделитель не найден, верните тройку, содержащую саму строку, за которой следуют две пустые строки.
s = 'Python великолепен!' части = s.partition («есть») # ('Python', 'есть', 'круто!') части = s.partition («было») # ('Python - это круто!', '', '')
26./27./28 center(), ljust(), rjust()
center()
: Возврат по центру строки длина ширина. Заполнение выполняется с использованием указанного fillchar (по умолчанию используется пробел).ljust()
: Возвращает строку, выровненную по левому краю, в строке длины ширины. Заполнение выполняется с использованием указанного fillchar (по умолчанию используется пробел).rjust()
: Вернуть строку, выровненную по правому краю, в строке длины ширины. Заполнение выполняется с использованием указанного fillchar (по умолчанию используется пробел).s = 'Python великолепен!' s = s.center (30, '-') # ------Python великолепен!------ s = 'Python великолепен!' s = s.ljust(30, '-') # Python великолепен! ------------- s = 'Python великолепен!' s = s.rjust(30, '-') # ------------ Python великолепен!
29. f-строки
Начиная с Python 3.6, f-строки можно использовать для форматирования строк. Они более читабельны, лаконичнее, а также быстрее!
число = 1 язык = 'Питон' s = f'{language} - это число {num} в программировании!' # 'Python номер 1 в программировании!'
30. swapcase()
Возвращает копию строки с преобразованием символов верхнего регистра в нижний и наоборот.
с = 'ПРИВЕТ мир' s = s.swapcase() # 'hello WORLD'
31. zfill()
Возвращает копию строки, заполненную цифрами «0», чтобы создать строку длины и ширины. Префикс ведущего знака (‚+’/’-‘) обрабатывается путем вставки заполнения после символа знака, а не перед ним.
с = '42'.zfill(5) # '00042' s = '-42'.zfill(5) # '-0042'
Подробнее о строках
Дополнительную информацию о строках в Python можно найти в этой статье: Строки — расширенный Python 05.
Встроенные строковые функции в Python
В следующей таблице перечислены все функции, которые можно использовать со строковым типом в Python 3.
Метод Описание капитализировать () Возвращает копию строки с заглавной буквой первого символа и строчными буквами остальных букв. чехол() Возвращает строку в нижнем регистре. Он похож на метод lower(), но метод casefold() преобразует больше символов в нижний регистр. центр() Возвращает новую центрированную строку указанной длины, дополненную указанным символом. Символ по умолчанию — пробел. считать() Ищет (с учетом регистра) указанную подстроку в заданной строке и возвращает целое число, указывающее вхождения подстроки. заканчивается() Возвращает True, если строка заканчивается указанным суффиксом (с учетом регистра), в противном случае возвращает False. расширить вкладки () Возвращает строку, в которой все символы табуляции \t заменены одним или несколькими пробелами, в зависимости от количества символов перед \t и указанного размера табуляции. найти() Возвращает индекс первого вхождения подстроки в заданной строке (с учетом регистра). Если подстрока не найдена, возвращается -1. индекс() Возвращает индекс первого вхождения подстроки в заданной строке. Изальнум () Возвращает True, если все символы в строке являются буквенно-цифровыми (буквами или цифрами). Если нет, возвращается False. альфа() Возвращает True, если все символы в строке являются буквенными (как строчными, так и прописными), и возвращает False, если хотя бы один символ не является алфавитом. isascii () Возвращает True, если строка пуста или все символы в строке ASCII. десятичный() Возвращает True, если все символы в строке являются десятичными. Если нет, возвращается False. isdigit() Возвращает True, если все символы в строке являются цифрами или символами Unicode цифры. Если нет, возвращается False. идентификатор() Проверяет, является ли строка допустимой строкой идентификатора или нет. Он возвращает True, если строка является допустимым идентификатором, в противном случае возвращает False. ниже() Проверяет, все ли символы данной строки в нижнем регистре или нет. Он возвращает True, если все символы в нижнем регистре, и False, даже если один символ в верхнем регистре. числовой() Проверяет, все ли символы строки являются числовыми или нет. Он вернет True, если все символы являются числовыми, и вернет False, даже если один символ не является числовым. печатаемый () Возвращает True, если все символы данной строки являются Printable. Он возвращает False, даже если один символ является непечатаемым. isspace() Возвращает True, если все символы заданной строки являются пробелами. Он возвращает False, даже если один символ не является пробелом. istitle() Проверяет, является ли первый символ каждого слова прописным, а остальные строчными или нет. Он возвращает True, если строка имеет заглавный регистр; в противном случае возвращается False. Символы и цифры игнорируются. выше() Возвращает True, если все символы в верхнем регистре, и False, даже если один символ не в верхнем регистре. присоединиться() Возвращает строку, которая представляет собой конкатенацию строки (для которой она вызывается) со строковыми элементами указанного итерируемого объекта в качестве аргумента. просто() Возвращает выровненную по левому краю строку с указанной шириной. Если указанная ширина больше длины строки, то оставшаяся часть строки заполняется указанным fillchar. ниже() Возвращает копию исходной строки, в которой все символы преобразованы в нижний регистр. lstrip() Возвращает копию строки, удаляя начальные символы, указанные в качестве аргумента. сделатьтранс() Возвращает таблицу сопоставления, которая сопоставляет каждый символ в заданной строке с символом во второй строке в той же позиции. Эта таблица сопоставления используется с методом translate(), который заменяет символы в соответствии с таблицей сопоставления. раздел() Разбивает строку при первом появлении указанного аргумента разделителя строк и возвращает кортеж, содержащий три элемента: часть перед разделителем, сам разделитель и часть после разделителя. заменять() Возвращает копию строки, в которой все вхождения подстроки заменены другой подстрокой. найти() Возвращает наивысший индекс указанной подстроки (последнее вхождение подстроки) в данной строке. риндекс() Возвращает индекс последнего вхождения подстроки в заданной строке. просто() Возвращает выровненную по правому краю строку с указанной шириной. Если указанная ширина больше длины строки, то оставшаяся часть строки заполняется указанным заполняющим символом. рраздел() Разбивает строку в последнем вхождении указанного аргумента sep разделителя строк и возвращает кортеж, содержащий три элемента: часть перед разделителем, сам разделитель и часть после разделителя. rsplit() Разделяет строку с указанным разделителем и возвращает объект списка со строковыми элементами. рстрип() Возвращает копию строки, удаляя конечные символы, указанные в качестве аргумента. расколоть() Разделяет строку с указанным разделителем и возвращает объект списка со строковыми элементами. линии разделения() Разбивает строку по границам строк и возвращает список строк в строке. начинается с() Возвращает True, если строка начинается с указанного префикса. Если нет, возвращается False. полоска() Возвращает копию строки, удаляя как начальные, так и конечные символы. свопкейс() Возвращает копию строки с преобразованием символов верхнего регистра в нижний регистр и наоборот. Символы и буквы игнорируются. название () Возвращает строку, в которой каждое слово начинается с символа верхнего регистра, а остальные символы — строчными. перевести() Возвращает строку, в которой каждый символ сопоставляется с соответствующим символом в таблице перевода. верхний() Возвращает строку в верхнем регистре. Символы и цифры остаются неизменными. zfill() Возвращает копию строки с символами ‘0’, дополненными слева. Он добавляет нули (0) в начало строки до тех пор, пока длина строки не станет равной указанному параметру ширины. Хотите проверить, насколько хорошо вы знаете Python?
Начать тест Python
Строковые функции в Python с примерами
В этом руководстве описываются различные строковые (символьные) функции, используемые в Python. Для управления строками и символьными значениями в python есть несколько встроенных функций. Это означает, что вам не нужно импортировать или иметь зависимость от какого-либо внешнего пакета для работы со строковым типом данных в Python. Это одно из преимуществ использования Python по сравнению с другими инструментами обработки данных. Работа со строковыми значениями очень распространена в реальном мире. Предположим, у вас есть полное имя клиента, и ваш менеджер попросил вас извлечь имя и фамилию клиента. Или вы хотите получить информацию обо всех продуктах, код которых начинается с «QT».
Список часто используемых строковых функций
В таблице ниже показаны многие распространенные строковые функции вместе с описанием и эквивалентной функцией в MS Excel. Мы все используем MS Excel на своем рабочем месте и знакомы с функциями, используемыми в MS Excel. Сравнение строковых функций в MS EXCEL и Python поможет вам быстро изучить функции и набраться опыта перед собеседованием.
Функция Описание MS EXCEL ФУНКЦИЯ моя строка[:N] Извлечь N символов из начала строки. ЛЕВЫЙ( ) моя строка[-N:] Извлечь N символов из конца строки ПРАВО( ) моя строка[X:Y] Извлечь символы из середины строки, начиная с позиции X и заканчивая Y СРЕДНИЙ( ) ул.split(sep=’ ‘) Разделенные струны — ул.заменить (старая_подстрока, новая_подстрока) Заменить часть текста другой подстрокой ЗАМЕНИТЬ( ) стр.нижний() Преобразование символов в нижний регистр НИЖНИЙ( ) стр.верхний() Преобразование символов в верхний регистр ВЕРХНЯЯ( ) str. contains(‘шаблон’, case=False) Проверка соответствия шаблону (функция Pandas) Оператор SQL LIKE стр.экстракт(regular_expression) Возврат совпадающих значений (функция Pandas) — количество ул(‘sub_string’) Количество вхождений шаблона в строке — ул. найти() Возврат позиции подстроки или шаблона НАЙТИ() улица isalnum() Проверить, состоит ли строка только из буквенно-цифровых символов — ул.ниже() Проверить, все ли символы в нижнем регистре — ул.верхняя() Проверить, все ли символы в верхнем регистре — числовая строка() Проверить, состоит ли строка только из цифр — ул. isspace() Проверить, состоит ли строка только из пробельных символов — лен( ) Вычислить длину строки ДЛИН( ) кот( ) Объединение строк (функция Pandas) СЦЕПИТЬ( ) separator.join(str) Объединить строки СЦЕПИТЬ( ) Функции LEFT, RIGHT и MID
Если вы являетесь средним пользователем MS Excel, вы должны использовать функции ВЛЕВО, ВПРАВО и СРЕДНЯЯ. Эти функции используются для извлечения N символов или букв из строки.
1. Извлечь первые два символа из начала строки
mystring = "Эй, приятель, как дела?" моя строка[:2]
Исходящий[1]: 'Он'
-
string[start:stop:step]
означает начало элемента от 0 (по умолчанию) до (stop-1), шаг за шагом 1 (по умолчанию). -
mystring[:2]
эквивалентноmystring[0:2]
-
mystring[:2]
сообщает Python, что необходимо извлечь первые 2 символа изmystring
строкового объекта. - Индексирование начинается с нуля, поэтому оно включает первый, второй элемент и исключает третий.
2. Найти два последних символа строки
mystring[-2:]
Приведенная выше команда возвращает
p?
. -2 начинает диапазон от предпоследней позиции до максимальной длины строки.3. Найти символы из середины строки
mystring[1:3]
Исходящий[1]: 'эй'
mystring[1:3]
возвращает второй и третий символы. 1 относится ко второму символу, так как индекс начинается с 0.4. Как перевернуть строку?
моя строка[::-1]
Out[1]: '?pussaw ,yddub yeH'
-1 указывает Python начать с конца и увеличить его на 1 справа налево.
5. Как извлечь символы из строковой переменной в Pandas DataFrame?
Давайте создадим поддельный фрейм данных для иллюстрации. В приведенном ниже коде мы создаем фрейм данных с именем
df
, содержащий только 1 переменную с именемvar1
. импортировать панд как pd df = pd.DataFrame({"var1": ["A_2", "B_1", "C_2", "A_2"]}) переменная1 0 А_2 1 Б_1 2 С_2 3 А_2
Для обработки текстовых данных в Python Pandas Dataframe мы можем использовать атрибут
str
. Его можно использовать для нарезки значений символов.дф['var1'].str[0]
В этом случае мы получаем первый символ из
var1
переменная. См. вывод, показанный ниже.Выход 0 А 1 Б 2 С 3 А
Извлечение слов из строки
Предположим, вам нужно вынуть слово(а) вместо символов из строки. Обычно мы рассматриваем один пробел как разделитель для поиска слов из строки.
1. Найти первое слово строки
mystring.split()[0]
Исходящий[1]: 'Эй'
Как это работает?
-
split()
функция разбивает строку, используя пробел в качестве разделителя по умолчанию -
mystring. split()
возвращает['Эй', 'приятель', 'как дела?']
-
0
возвращает первый элемент или словоHey
2. Запятая как разделитель слов
mystring.split(',')[0]
Исходящий[1]: 'Эй, приятель'
3. Как извлечь последнее слово
mystring.split()[-1]
Out[1]: 'как дела?'
4. Как извлечь слово из DataFrame
Давайте создадим фиктивный фрейм данных, состоящий из имен клиентов, и назовем его переменной 9.0390 имя пользователя
mydf = pd.DataFrame({"custname": ["Priya_Sehgal", "David_Stevart", "Kasia_Woja", "Sandy_Dave"]})
пользовательское имя 0 Прия_Сегал 1 Дэвид_Стеварт 2 Кася_Воя 3 Сэнди_Дэйв
#Первое слово mydf['fname'] = mydf['custname'].str.split('_').str[0] #Последнее слово mydf['lname'] = mydf['custname'].str.split('_').str[1]
Подробное объяснение
-
str. split()
аналогиченsplit()
. Он используется для активации функции разделения во фрейме данных pandas в Python. - В приведенном выше коде мы создали два новых столбца с именами
fname
иlname
, в которых хранятся имя и фамилия.
Выход имя пользователя fname lname 0 Priya_Sehgal Прия Сегал 1 David_Stevart Дэвид Стюарт 2 Kasia_Woja Кася Воя 3 Сэнди_Дэйв Сэнди Дэйв
Оператор SQL LIKE в Pandas DataFrame
В SQL оператор LIKE используется, чтобы узнать, соответствует ли строка символов шаблону или содержит ли он его. Мы можем реализовать аналогичную функциональность в python, используя
str.содержит( )
функцию.df2 = pd.DataFrame({"var1": ["AA_2", "B_1", "C_2", "a_2"], "var2": ["X_2", "Y_1", "Z_2", "X2"]})
вар1 вар2 0 АА_2 Х_2 1 Б_1 Д_1 2 C_2 Z_2 3 а_2 Х2
Как найти строки, содержащие A или B в переменной var1?
df2['var1']. str.contains('A|B')
str.contains(шаблон)
используется для сопоставления шаблона в Pandas Dataframe.Выход 0 Верно 1 правда 2 Ложь 3 Ложь
Приведенная выше команда возвращает FALSE для четвертой строки, поскольку функция чувствительна к регистру. Чтобы игнорировать чувствительность к регистру, мы можем использовать параметр
case=False
. См. рабочий пример ниже.df2['var1'].str.contains('A|B', case=False)
Как фильтровать строки, содержащие определенный шаблон?
В следующей программе мы просим Python подмножить данные с условием — содержать символьные значения либо A, либо B. Это эквивалентно ключевому слову WHERE в SQL. 9 — это токен регулярного выражения, означающий начало с определенного элемента.
вар1 вар2 1 Б_1 Д_1 2 C_2 Z_2 3 а_2 Х2
Найти позицию определенного символа или ключевого слова
str. find(pattern)
используется для поиска позиции подстроки. В этом случае подстрока ‘_’.df2['var1'].str.find('_')
0 2 1 1 2 1 3 1
Заменить подстроку
str.replace(old_text,new_text,case=False)
используется для замены определенного символа (символов) или шаблона на какое-то новое значение или шаблон. В приведенном ниже коде мы заменяем _ на — в переменной var1.df2['var1'].str.replace('_', '--', case=False)
Выход 0 АА--2 1 Б--1 2 С--2 3 А--2
Мы также можем создавать сложные шаблоны, подобные следующей программе.
+
означает, что элемент встречается один или несколько раз. В этом случае алфавит встречается 1 или более раз.df2['var1'].str.replace('[A-Z]+_', 'X', case=False)
0 х2 1 х 1 2 х 2 3 х 2
Найти длину строки
len(string)
используется для вычисления длины строки. Во фрейме данных pandas вы можете применитьstr.len()
для того же.df2['var1'].str.len()
Выход 0 4 1 3 2 3 3 3
Чтобы найти количество вхождений определенного символа (скажем, сколько раз «A» появляется в каждой строке), вы можете использовать функцию
str.count(pattern)
.df2['var1'].str.count('A')
Преобразование в нижний и верхний регистр
str.lower()
иstr.upper()
Функции используются для преобразования строки в нижний и верхний регистр. значения в верхнем регистре.# Преобразовать в нижний регистр mydf['имя пользователя'].str.lower() # Преобразовать в верхний регистр mydf['имя пользователя'].str.upper()
Удалить начальные и конечные пробелы
-
str.strip()
удаляет как начальные, так и конечные пробелы. -
стр.lstrip()
удаляет начальные пробелы (в начале). -
str.rstrip()
удаляет конечные пробелы (в конце).
df1 = pd.DataFrame({'y1': ['Джек', 'Джилл', 'Джесси', 'Фрэнк']}) df1['оба']=df1['y1'].str.strip() df1['left']=df1['y1'].str.lstrip() df1['право']=df1['y1'].str.rstrip()
y1 оба слева направо 0 джек джек джек джек 1 Джилл Джилл Джилл Джилл 2 Джесси Джесси Джесси Джесси 3 Фрэнк Фрэнк Фрэнк Фрэнк
Преобразование числа в строку
С помощью функции
str()
вы можете преобразовать числовое значение в строку.моя переменная = 4 mystr = str (моя переменная)
Объединение или объединение строк
Просто используя
+
, вы можете соединить два строковых значения.х = "Дипаньшу" у = "Бхалла" х+у
ДипаншуБхалла
Если вы хотите добавить пробел между двумя строками, вы можете использовать это —
x+' '+y
возвращаетДипаншу Бхалла
Предположим, у вас есть список, содержащий несколько строковых значений, и вы хотите их объединить. Вы можете использовать функцию join() .string0 = ['Рам', 'Кумар', 'Сингх'] ' .присоединиться (строка0)
Выход 'Рам Кумар Сингх'
Предположим, вы хотите объединить или объединить два столбца фрейма данных pandas.
mydf[‘полное имя’] = mydf[‘fname’] + ‘ ‘ + mydf[‘lname’]
ИЛИ
mydf[‘полное имя’] = mydf[[‘fname’, ‘lname’]].apply(лямбда x: ‘ ‘.join(x), ось=1)
пользовательское имя fname lname полное имя 0 Priya_Sehgal Прия Сегал Прия Сегал 1 David_Stevart Дэвид Стюарт Дэвид Стюарт 2 Kasia_Woja Kasia Woja Kasia Woja 3 Sandy_Dave Сэнди Дэйв Сэнди Дэйв
Оператор SQL IN в Pandas
Мы можем использовать функцию
isin(list)
, чтобы включить несколько значений в наши критерии фильтрации или подмножества.mydata = pd.DataFrame({'продукт': ['A', 'B', 'B', 'C','C','D','A']}) мои данные[мои данные['продукт'].
-