Статьи

Python String split () Пример

1. Введение

Манипулирование строками может быть очень важным аспектом программирования из-за разнообразия способов управления строками. И одним из таких способов манипулирования строками является разделение их по нескольким символам. Вы можете разделить строки на запятые, точки с запятой и многое другое. В нашей сегодняшней статье мы рассмотрим, как метод split в Python может помочь манипулировать строками.

Метод split обычно помогает решить задачу разбивки строк на более мелкие фрагменты на основе определенных строк. У вас может быть длинная строка, сгруппированная по определенному символу, и вы хотите разбить строку на основе этого символа. Вот где метод split вступает в игру.

1.1 Синтаксис

Метод split является частью класса String в Python.

S.split (разделитель, maxsplit) -> Список строк

Первое, что вам нужно, это строка, которую вы хотите разделить. Затем строка, которую вы хотите использовать в качестве разделителя. Если разделитель или None не пропущены, пробел предполагается в качестве разделителя. Затем параметр maxsplit используется для определения количества делений. По умолчанию он разделяется на максимально возможное количество строк на основе разделителя.

И в результате получается список фрагментов строки, образованных путем разбиения исходной строки на основе разделителя.

2. Примеры

Теперь давайте рассмотрим некоторые примеры метода, split на части.

2.1 Python String split () Пример 1

Представьте, что у вас есть строка «Что мы делаем сейчас» . Эта строка представлена ​​в памяти следующим образом:

Python String split - Представление в памяти
Памятное представление строки «Что мы делаем сейчас»

Теперь представьте, что у нас есть следующий код

1
2
name = 'What Do We Do Now'
name.strip('o', 2)

Приведенный выше код означает, что мы разбиваем строку на куски. Мы разбиваем строку везде, где видим букву «о», в данном случае буква «о» является нашим разделителем.

Теперь мы также передаем число 2. Число 2 означает, что мы можем разделить только 2 раза. Итак, как языки Python выполняют эту задачу?

Он начинается, пока не дойдет до индекса 6, где находится буква «о». Затем он разбивает фрагмент строки с индекса 0 на индекс 5 и помещает его в список.

Таким образом, первый кусок в списке будет:

1
['What D']

Затем следующая вещь, которую мы делаем, это продолжается до тех пор, пока мы не найдем еще одну букву «о» в индексе 12, мы разберем фрагмент от последнего «о» в индексе 6 до индекса 12 и поместим в наш список. Теперь у нас есть 2 фрагмента строк в нашем списке.

1
['What D', ' We D']

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

1
['What D', ' We D', ' Now']

Вы бы поняли, что есть буква «о», которая могла бы быть разделена, но мы не могли этого сделать, потому что разделение было ограничено 2 раза.

И возвращенный окончательный список содержит только 3 фрагмента строк.

2.2 Python String split () Пример 2

Учтите, что имя студента было введено как один текст, и нам нужно разбить его на имя, фамилию и другие имена студента.

1
studentName = 'Musa Kabuga Mailafia'

И когда мы вызываем метод split без передачи какого-либо параметра

1
studentName.split()

Строка представлена ​​в памяти как:

Python String split - Строковое представление
Строковое Представление Для studentName

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

И результат будет:

1
['Musa', 'Kabuga', 'Mailafia']

Это означает, что имя студента по умолчанию разделяется на основе пробелов и возвращается список из трех строк.

2.3 Python String split () Пример 3

Рассмотрим другой пример, где студент передает 3 строки для своего имени, но нам нужно только разделить имя на имя и фамилию. Таким образом, мы хотим разделить только один раз. Разделить на его / ее имя и каждая другая строка является фамилией.

1
studentName = 'Faiz Bashir Sheik'

Затем мы вызываем метод split , но передаем только параметр, чтобы ограничить количество строк, которые должны быть возвращены в списке.

Python String split - Строковое представление для studentName
Строковое Представление Для studentName
1
studentName.split(maxsplit = 1)

Поскольку было задано максимальное количество разбиений, строка разбивается только один раз. А поскольку разделитель не был пропущен, пробел используется по умолчанию. Таким образом, результат, который будет возвращен в этом случае, будет:

1
['Faiz', 'Bashir Sheik']

2.4 Python String split () Пример 4

Рассмотрим следующее:

1
string_value = 'How,Do,You,Do,Kabir'

И мы хотим разделить строку, так как мы не хотим иметь запятые в строке.

Для начала мы сначала представим, как это будет выглядеть в памяти. В памяти это будет выглядеть так:

Python String split
Строковое Представление Для string_value

Затем мы вызываем функцию split с разделителем, который мы хотим использовать:

1
string_value.split(",")

И возвращенный результат будет:

1
['How', 'Do', 'You', 'Do', 'Kabir']

2.5 Python String split () Пример 5

Давайте рассмотрим следующий пример

1
student_address = '11, Malali Str; 10; Afr'

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

Представь себе первую строку в памяти

Python String split - адрес студента
Строковое представление для student_address

Затем мы вызываем функцию split с точкой с запятой (;) в качестве разделителя, затем максимальное расщепление, необходимое для 1. Итак, функция выглядит следующим образом:

1
student_address.split(';', maxsplit = 1)

И возвращенный результат будет:

1
['11, Malali Str', '10; Afr']

2.6 Python String split () Пример 6

Что произойдет, если разделитель, используемый для разбиения строки, не существует в строке?

Давайте посмотрим на еще один пример.

1
student_name = 'Alameen Ibrahim'

И мы хотим разделить строку на основе разделителя ‘,’, и разделитель не существует в строке.

1
student_name.split(',')

Можете ли вы угадать, что будет на выходе?

1
['Alameen Ibrahim']

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

3. Python String split () — Заключение

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

4. Загрузите исходный код

Это был пример того, как использовать метод split в Python

Скачать
Вы можете скачать полный исходный код этого примера здесь: Пример Python String split ()