Автор оригинала: Team Python Pool.
Python Substring |Операции с подстроками в Python
Python substring – это строка, которая является частью другой (или большей) Python String. В программировании на Python этот метод также известен как нарезка строки.
Как создать подстроку Python
В языке программирования Python обычно существует два метода создания подстрок.
- Ломтик
- Расщеплять
Создание Подстроки Python С Помощью Метода Slice
- Во-первых, вы должны хранить строку в переменной Python. Наш пример:
- С помощью команды “str [4:]” теперь вы выведете строку без первых четырех символов: ‘o world this is Karan from Python Pool’
- С помощью команды “str [: 4]” в свою очередь выводятся только первые четыре символа: “Hello”
- Команда “str [: – 2]”, которая выводит строку без последних двух символов, также очень практична: “Hello world this is Karan from Python Po”
- Это также работает наоборот, “str[-2:]” так что выводятся только последние два символа:”ol”
- Наконец, вы также можете комбинировать команды. Например, команда “x [4: -4]” выводит строку без первых и последних четырех символов:’o world this is Karan from Python ‘
Вы можете выполнить все вышеперечисленные команды в терминале Python, как показано на рисунке ниже.
Создание Подстроки Python С Помощью Метода Split
Split strings-это еще одна функция, которая может быть применена в Python, давайте посмотрим на строку “Python Pool Best Place to Learn Python”. Сначала здесь мы разделим строку с помощью командного слова. разделитесь и получите результат.
Выход
['Python', 'Pool', 'Best', 'Place', 'to', 'Learn', 'Python']
Чтобы лучше понять это, мы увидим еще один пример разделения, вместо пробела (‘ ‘) мы заменим его на (‘r’), и он разделит строку везде, где в строке упоминается ‘r’
Выход
['Python Pool Best Place to Lea', 'n Python ']
Примечание: В Python строки неизменяемы.
Строковые методы Python
Метод в Python похож на функцию, но он работает “на” объекте. Если переменная s рассматривается как строка, то код s.lower() запускает метод lower() на этом строковом объекте и затем возвращает результат (эта концепция метода, работающего на объекте, является одной из основных идей, составляющих Объектно-ориентированное программирование, ООП)
Python substring имеет довольно много методов, которые строковые объекты могут вызывать для выполнения часто встречающихся задач (связанных со строкой). Например, если требуется, чтобы первая буква строки была заглавной, можно использовать метод capitalize (). Ниже приведены все методы строковых объектов. Кроме того, включены все встроенные функции, которые могут принимать строку в качестве параметра и выполнять некоторую задачу.
Таблица, содержащая все Строковые методы Python
Метод | Описание |
Python String capitalize() | Преобразует первый символ в заглавную букву |
Центр строк Python() | Колодки строка с указанным символом |
Python String casefold() | преобразуется в строки сложенные в регистр |
Количество строк Python() | возвращает вхождения подстроки |
Python String endswith() | Проверяет, заканчивается ли строка указанным суффиксом |
Python String expandtabs() | Заменяет Табуляцию Пробелами |
Кодирование строк Python() | возвращает кодированную строку |
Python String find() | Возвращает индекс первого вхождения подстроки |
Формат строки Python() | форматирует строку |
Индекс строки Python() | Возвращает индекс подстроки Python |
Python String isalnum() | Проверки Буквенно-Цифровые |
Python String isalpha() | Проверяет, все ли это алфавиты |
Строка Python является десятичной() | Проверяет Десятичные дроби |
Python String isdigit() | Проверяет Цифры |
Python String isidentifier() | Проверяет наличие действительного идентификатора |
Строка Python ниже() | Проверяет, все ли они строчные |
Python String isnumeric() | Чеки Числовые |
Строка Python доступна для печати() | Чеки для печати |
Python String isspace() | Проверяет пробелы |
Строка Python-это заголовок() | Чеки для титульного дела |
Строка Python является верхней() | возвращает, если все они прописные |
Python String join() | Возвращает Конкатенированную строку |
Python String просто() | возвращает строку с выравниванием по левому краю |
Python String rjust() | возвращает строку с выравниванием по правому краю |
Строка Python ниже() | возвращает строку в нижнем регистре |
Верхняя строка Python() | возвращает строку в верхнем регистре |
Python String swapcase() | поменять прописные буквы на строчные |
Python String strip() | Удаляет Ведущие |
Python String strip() | Удаляет Трейлинг |
Python String strip() | Удаляет как Ведущий, Так и Трейлинг |
Раздел строк Python() | Возвращает кортеж |
Python String maketrans() | возвращает таблицу перевода |
Раздел строк Python() | Возвращает кортеж |
Python String translate() | возвращает сопоставленную строку |
Python String replace() | Заменяет Подстроку Внутри |
Python String find() | Возвращает самый высокий индекс подстроки |
Разделение строк Python() | Расщепляет строку слева |
Разделение строк Python() | Расщепляет Строку Справа |
Python String startswith() | Проверяет, начинается ли строка с указанной строки |
Заголовок строки Python() | Возвращает строку в оболочке Заголовка |
Python String zfill() | Возвращает копию строки, заполненную Нулями |
Извлечение подстроки в Python
Мы можем извлекать подстроки в Python с помощью квадратных скобок, которые могут содержать один или два индекса и двоеточие. Вот так,
- myString[0] извлекает первый символ ;
- myString[1:] the second through last characters;
- myString[:4] извлекает символы с первого по четвертый ;
- myString[1:3] символы со второго по третий ;
- myString[-1] извлекает последний символ .
Must Read: Python Book | Лучшая книга для изучения Python в 2020 году
Как проверить, содержит ли строка подстроку в Python
Независимо от того, является ли это просто слово, буква или фраза, которую вы хотите проверить в строке, с помощью Python вы можете легко использовать встроенные методы и тест членства в операторе.
Стоит отметить, что вы получите логическое значение (True или False) или целое число , чтобы указать, содержит ли строка то, что вы искали. Вы узнаете об этом больше, когда я покажу код ниже.
Давайте рассмотрим потенциальные решения, с помощью которых вы можете узнать, содержит ли строка или подстрока в Python определенное слово/букву.
- С помощью метода find()
- Использование в операторе
- С помощью метода count()
- Использование метода operator.contains()
- С помощью Регулярных выражений (REGEX)
1. Подстрока Python с использованием метода find
Другой метод, который вы можете использовать, – это метод поиска строки.
В отличие от оператора in, который вычисляется до логического значения, метод find возвращает целое число.
Это целое число по существу является индексом начала подстроки, если подстрока существует, в противном случае возвращается -1.
Давайте посмотрим на метод find в действии.
>>>
>>> str.find("soccer")
18
>>> str.find("Ronaldo")
-1
>>> str.find("Messi")
0
Одна интересная вещь в этом методе заключается в том, что вы можете дополнительно указать начальный индекс и конечный индекс, чтобы ограничить свой поиск внутри.
2. Использование оператора in для поиска подстроки Python
Оператор in возвращает true, если подстрока существует в строке, и false, если нет.
Синтаксис
Общий синтаксис таков:
substring in string
Пример
Выход
Check if Python Programming contains Programming:
True
Check if Python Programming contains Language:
False
3. С помощью метода count()
Метод count() для поиска или поиска подстроки Python проверяет наличие подстроки в строке. Если подстрока не найдена в строке, она возвращает 0.
Синтаксис: string.count(подстрока)
Пример: Проверка наличия подстроки в строке с помощью метода count()
Выход:
2 1 0
4. Использование Метода Contains
__contains__() – это еще одна функция, которая поможет вам проверить, содержит ли строка определенную букву/слово.
Вот как вы можете его использовать:
Вы получите вывод как True/False. Для приведенного выше фрагмента кода вы получите вывод в виде:
True
Обратите внимание, что при написании метода используются 4 символа подчеркивания (2 перед словом и 2 после).
Вот программа, чтобы объяснить то же самое:
В этом случае выход:
Yeyy, found the substring!
5. Использование регулярных выражений (REGEX) для поиска подстроки Python
Регулярные выражения предоставляют более гибкий (хотя и более сложный) способ проверки подстрок python на соответствие шаблону. Python поставляется со встроенным модулем для регулярных выражений, называемым re. Модуль re содержит функцию search, которую мы можем использовать для сопоставления шаблона подстроки следующим образом:
from re import search
if search(substring, fullstring):
print "Found!"
else:
print "Not found!"
Этот метод лучше всего подходит, если вам нужна более сложная функция сопоставления, например сопоставление без учета регистра. В противном случае следует избегать усложнения и более низкой скорости регулярных выражений для простых вариантов использования сопоставления подстрок.
Пример подстрок альтернативных символов в Python
Вы также можете использовать ту же концепцию нарезки в python для генерации подстрок, формируя гораздо больше логик. Следующие строки кода помогут вам сформировать строку, выбрав альтернативные символы строки.
Выход
AtraeCaatr
Подстрока Python с использованием цикла For
Вы также можете использовать for loop с функцией range для возврата подстроки. Для этого мы должны использовать функцию print вместе с аргументом end. Этот пример строки Python возвращает подстроку, начинающуюся с 3 и заканчивающуюся на 24.
Совпадение подстрок Python
В этом примере мы проверяем, присутствует ли подстрока в данной строке или нет, используя Python If Else и not In operator.
Выход
[0, 8, 17]
Резюме:
Поскольку Python является объектно-ориентированным языком программирования, многие функции могут быть применены к объектам Python и Python Substring. Примечательной особенностью Python является его отступы исходных операторов, чтобы сделать код более легким для чтения.
- Доступ к значениям через нарезку – квадратные скобки используются для нарезки вместе с индексом или индексами для получения подстроки.При нарезке, если диапазон объявлен [1:5], он фактически может извлечь значение из диапазона [1:4]
- При нарезке, если диапазон объявлен [1:5], он фактически может извлечь значение из диапазона [1:4]
- Вы можете обновить строку Python, переназначив переменную другой строке
- Метод replace() возвращает копию строки, в которой вхождение old заменяется новым.Синтаксис метода заменяет oldstring.replace(“value to change”,”value to be replaced”)
- Синтаксис метода заменяет старую строку.replace(“value to change”,”value to be replaced”)
- Строковые операторы, такие как [], [:], in, Not in и т. Д., могут быть применены для объединения строки, извлечения или вставки определенных символов в строку или для проверки наличия определенного символа в строке
С помощью срезов или Python Substring мы извлекаем части строк. Мы можем указать необязательный начальный индекс и необязательный последний индекс (не длину). Смещения полезны.
Если у вас все еще есть какие-либо сомнения или путаница, сообщите нам об этом в разделе комментариев ниже.