Недавно, когда я работал над приложением на Python, мне нужно было разделить строку. В этом тексте я расскажу, как использовать метод split().

Метод split() — это встроенный строковый метод в Python, который позволяет разбить строку на список подстрок. Разбиение происходит на основе указанного разделителя — символа или строки, которые разделяют исходную строку на отдельные подстроки.

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

Содержание

Синтаксис

Синтаксис метода Python string.split():

myString.split('separator',maxsplit)

Здесь myString — это строка, которую мы хотим разделить.

Здесь мы используем два параметра в методе разделения.

  • разделитель: в метод разделения мы можем передавать любые разделители, такие как «*, /, &,(, ), {, }, \, |» и т. д. в качестве параметра. Кроме того, мы можем использовать любые символы или строки в качестве разделителей для метода Split(). Если для данной строки не указан разделитель, то в качестве разделителя по умолчанию используются пробелы.
myString.split('/',maxsplit)
  • maxsplit: это необязательный параметр, который указывает, сколько раз нам нужно разделить строку. Он примет число в качестве значения. А если параметр не указан, по умолчанию принимается -1, т.е. ограничений на разделение нет.
myString.split('/',2)

Пример 1: с использованием пробелов в качестве разделителя

Давайте посмотрим на один пример использования метода string Split() в Python.

# Defining a string
myStr="George has a Tesla"

#List of string
my_List=myStr.split()

print(my_List)

Выход:

['George', 'has', 'a', 'Tesla']

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

Пример 1: с использованием пробелов в качестве разделителя

Пример 2: разделение строки с разделителями

Здесь мы увидим несколько примеров того, как строка Split() работает с различными разделителями в Python.

Разделить с помощью ‘,’:

#Defining a string
myStr="one, two, three, four, five"

#Split using ',' separator
num_List=myStr.split(',')

#Printing list of numbers
print(num_List)

# output
['one', ' two', ' three', ' four', ' five']

Пример 2: разделение строки с разделителями

Разделить с помощью ‘|’:

#Defining a string
myStr="Welcome|to|USA"

#split using '|' separator
my_List=myStr.split('|')

#prints list of strings
print(my_List)

Выход:

['Welcome', 'to', 'USA']

Разделить с помощью разделителя «-»:

# Defining a string
state_names = "Florida-Texas-Calefornia-Ohio"

# Split using character '-'
state_name_list = state_names.split('-')

# Printing list of states
print(state_name_list)

Выход:

['Florida', 'Texas', 'Calefornia', 'Ohio']

Пример 3: с maxsplit

В Python метод string.split() имеет параметр maxsplit, который позволяет указать максимальное количество разделений строки с помощью заданного разделителя. Если maxsplit не указан или равен -1, то разделение будет происходить без ограничений.

Метод Split() с максимальным разделением по умолчанию: -1

#  Defining a string
strNames="Tony, Steve, Peter, Bruce, Scott"

# default maxsplit: -1
print(strNames.split(','))

Выход:

['Tony', ' Steve', ' Peter', ' Bruce', ' Scott']

Метод Split() с maxsplit: -1

#  Defining a string
strNames="Tony, Steve, Peter, Bruce, Scott"

# maxsplit: -1
print(strNames.split( ',' , -1))

Выход:

['Tony', ' Steve', ' Peter', ' Bruce', ' Scott']

Как мы видим из приведенных ниже исполненных кодов, оба метода дают одинаковый результат, как описано.

метод разделения с параметром maxsplit

Пример 3: с maxsplit

Метод Split() с maxsplit: 0

Если мы используем параметр maxsplit со значением 0 в методе Split(), то получим исходную строку без изменений, так как разделим её на части.

# maxsplit: 0
print(strNames.split(',', 0))

# output
['Tony, Steve, Peter, Bruce, Scott']

Метод Split() с maxsplit: 1

Аналогично, если в качестве параметра maxsplit указать 1, а разделителем выбрать запятую, метод Split() выполнит разделение строки только один раз. После этого метод Split() больше не будет работать.

 # максимальное разделение: 1
 print(strNames.split(',', 1))

Выход:

['Tony', ' Steve, Peter, Bruce, Scott']

Метод Split() с maxsplit: 2

Если мы передадим в качестве параметра maxsplit значение 2 и в качестве разделителя укажем запятую (,), то метод Split() разделит строку два раза с помощью этого разделителя. После этого функция Split() не будет работать корректно.

# maxsplit: 2
print(strNames.split(',', 2))

Выход:

['Tony', ' Steve', ' Peter, Bruce, Scott']

Метод Split() с maxsplit: 4

Если мы передадим в качестве параметра maxsplit значение 4 и укажем разделитель «,», то метод Split() разделит строку четыре раза, используя этот разделитель. Поскольку в нашем вводе только четыре «,», то этот процесс будет выполнен четыре раза.

# maxsplit: 4
print(strNames.split(',', 4))

Выход:

['Tony', ' Steve', ' Peter', 'Bruce', 'Scott']

Заключение

Метод Split() — это удобный встроенный метод для работы со строками в Python. Он позволяет разделить строку на список подстрок, используя указанный разделитель. Этот метод может быть полезен, когда вам нужно обработать отдельные слова или токены в строке, а также когда вам нужно извлечь определённые части из более длинной строки.

Добавить комментарий