Как разделить строку в Python (разделители и Maxsplit)

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

Попробуйте это решение в редакторе

Обзор

Разделение строк — одна из наиболее распространенных операций обработки текста. Независимо от того, анализируете ли вы файл CSV, разбиваете журналы, обрабатываете пользовательский ввод или извлекаете слова из документа, встроенные строковые методы Python делают эту задачу тривиальной. Ключевым методом для этого является `.split()`, который разбивает строку на список подстрок.

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

Метод `split()` также принимает второй необязательный параметр, называемый `maxsplit`. Это определяет максимальное количество разделений, которое должно быть выполнено. Оставшаяся часть строки возвращается как последний элемент списка, что очень полезно, когда вы хотите проанализировать только первые несколько токенов команды или сообщения.

Код и вывод выполнения

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

sentence = "Python is fun to learn"
csv_data = "apple,banana,orange,grape"

# 1. Split by whitespace (default)
words = sentence.split()
print("Whitespace split:", words)

# 2. Split by comma separator
fruits = csv_data.split(",")
print("Comma split:", fruits)

# 3. Using maxsplit parameter
limited_split = csv_data.split(",", maxsplit=2)
print("Maxsplit of 2:", limited_split)
Терминальный выход
Whitespace split: ['Python', 'is', 'fun', 'to', 'learn']
Comma split: ['apple', 'banana', 'orange', 'grape']
Maxsplit of 2: ['apple', 'banana', 'orange,grape']

Пошаговая реализация

  • Вызовите метод .split() для строковой переменной.
  • Передайте строку-разделитель, например ',' или '\n', чтобы разделить ее по пользовательскому разделителю.
  • Используйте аргумент maxsplit, чтобы прекратить разделение после определенного количества элементов.

Часто задаваемые вопросы

Как функция Split() обрабатывает последовательные пробелы?

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

Как разделить строку на несколько разных разделителей?

Чтобы разделить данные по нескольким разделителям (например, запятым, пробелам и точкам с запятой), используйте регулярные выражения с помощью функции re.split().

Связанные темы

Рекомендуемые ресурсы Python

Расширьте свои знания с помощью соответствующих интерактивных руководств, шпаргалок и сравнений кода.