Методы строк Python играют важную роль в кодировании: они помогают собирать различные данные. Неважно, текст ли это из пользовательского ввода, файлы или базы данных — работа с последовательностями в Питон является базой. 

В блоге студии web-разработки YuSMP Group разобрали основные методы и операции, которые облегчают жизнь разработчиков.

Что это такое

Этот инструмент является одним из наиболее часто используемых типов данных в программировании. Строка — это всегда последовательность, т. е. конкатенация нескольких символов. Проще говоря, все, что написано в кавычках.

Последовательность в Python практически ничем не отличается от подобных элементов в других языках. Однако работа с таким базовым инструментом  может быть очень сложной, и Python предоставляет несколько встроенных функций, чтобы, сократить трудозатраты и, соответственно, финансовые расходы на разработку.

Объединить и соединить 

При программировании  очень часто требуется объединение символов. Представьте, что в программе пользователь вводит свое имя и фамилию, а вы храните эти данные в разных переменных.

first_name = “Max”
last_name = “Maximov”

Полное имя теперь должно быть сохранено в третьей переменной для вывода. Это работает следующим образом:

Name = “first_name” + " + “last_name”

Знак «плюс»в Питоне не имеет арифметического значения. Он объединяет строки символов,таким образом, знак плюс является оператором и выполняет разные функции в зависимости от того, над чем он работает. 

“Плюс” не единственный оператор, можно встретить разные знаки += Python, которые выполняют различные функции. Операторами пользуются для выполнения операций с переменными и значениями. 

Еще в языке есть функция join Python

Мы можем использовать функцию join() для формирования строки из коллекций (например, list , tuple).

list_1 = ['H', 'e', 'l', 'l', 'o', ' ', 'W', 'o',  'r', 'l', 'd']
sep = ''
str_1 = sep.join(list_1)

Для функции join() нам нужны две вещи. С одной стороны, нужен разделитель, с помощью которого будут соединяться отдельные части. В нашем случае символ пустой, поэтому все буквы соединяются напрямую. Список также передается в качестве аргумента.

> list_1 = ['H', 'e', 'l', 'l', 'o', ' ', 'W', 'o',  'r', 'l', 'd']
> sep = ''
> str_1 = sep.join(list_1)
> str_1
'Hello world'
>

Разделить

Другой часто используемой функцией является разделение строки на две или более частей. Это позволяет разбить полное имя на компоненты «имя» и «фамилия». Простым способом реализации этого является метод split(), чтобы в Python разделить строки

Он разделяет элемент на несколько частей и возвращает их в виде списка. Разделяющий символ называется разделителем.

В качестве разделителя по умолчанию используется пробел. Кроме того, в качестве аргумента может быть указан и характер функции:

name = “Max Maximov”
nameParts = name.split(" ")
firstName = nameParts[0]
lastName = nameParts[1]

Преобразовать данные

Мы используем метод str() для преобразования в python число в строку или других типов данных. Для этого мы передаем this в качестве аргумента.

str_1 = str(9999)

9999 на самом деле число.

> str_1 = str(9999)
> str_1
'9999'
>

Мы также можем передать еще два аргумента. Первый определяет преобразование, а второй описывает, как реагировать в случае неисправности.

По умолчанию выполняется преобразование в UTF-8, а для индикации ошибок установлено значение strict.

Найти нужные символы

При программировании может случиться так, что вы захотите осуществить поиск подстроки в строке Python или определенные символы. Например, можно проверить, ввел ли пользователь данные в определенном формате. Но также возможно и обнаружение определенных ключевых слов.

Поиск символа в строке Python производится через метод find(). Если текст содержит искомый термин, позиция термина находится в строке переменной. 

Найденную позицию также можно использовать для обрезки. Это называется "нарезка". Начальная и конечная позиции перечислены в квадратных скобках, разделенных двоеточием. 

Заменить символы

С помощью метода replace() Python можно заменить одну строку на другую.

str_1 = "Hello World"
str_2 = str_1.replace('W', 'K')

Первый аргумент — это заменяемый элемент. Вторая — это строка символов, которая будет заменена.

> str_1 = "Hello World"
> str_2 = str_1.replace('W', 'K')
> str_2
"Hello Korld"
>

Пример: Python замена символов в строке

Функция replace() возвращает новую строку. Как уже упоминалось, мы также можем заменить целые последовательности вместо отдельных символов.

str_1 = "Hallo World"
str_2 = str_1.replace("Hello", "Hi")

Длина двух строк символов не обязательно должна быть одинаковой.

Powershell: работа со строками

Обработка последовательностей — одна из самых распространенных операций в скриптовых языках. Традиционные инструменты, такие как пакетные файлы или VBScript, могут справиться с этими задачами довольно неуклюжим способом. Напротив, PowerShell предлагает полный арсенал функций для работы со строками.

Важно понимать, что последовательности в PowerShell всегда являются объектами, независимо от того, имеете ли вы дело с буквальными строками или переменными. Следовательно, методы строковых объектов предоставляют большинство необходимых вам функций.

Что важно запомнить

Строки в Python по своей природе неизменяемы. Мы не можем ни удалять символы, ни изменять их, но мы смогли объединить несколько последовательностей с помощью операторов + и *.

Мы также рассмотрели множество встроенных функций. Эти методы особенно важны, потому что они позволяют сократить как время и усилия, так и объем исходного кода.

Веб-услуги и разработка в YuSMP Group предполагают работу с языком Пион и другими передовыми технологиями. Наши специалисты выполняют работу качественно и в оговоренные сроки. Посмотрите проекты, которые мы создали, вероятнее всего, наша команда поможет реализовать все ваши технологичные идеи!