Как разбить строку в Python

Разделить строку в Python довольно просто. Вы можете добиться этого с помощью встроенной функции Python "split ()".

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

Как использовать метод разделения Python

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

 string.split([separatng criteria], [break point or max_split])

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

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

 myTexts = 'How to split a text in Python'
splitString = myTexts.split()
print(splitString)
Output: ['How', 'to', 'split', 'a', 'text', 'in', 'Python']

Давайте посмотрим, как работает метод split () при указании критериев разделения. В этом примере запятая – это критерий разделения:

 myTexts = 'How to split, a text in, Python'
print(myTexts.split(", "))

Для лучшего понимания приведенный ниже пример кода разбивает строки везде, где есть точка. Итак, точки здесь – критерии разделения:

 myTexts = 'How to split.a text in.Python'
print(myTexts.split("."))
Output: ['How to split', 'a text in', 'Python']

max_split – это целое число, указывающее максимальное количество разрывов в строке. Что еще более важно, он указывает точку разрыва струны.

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

Например, приведенный ниже код разбивает текст на два и останавливается на второй запятой:

 myTexts = 'How, to, split, a, text, in, Python'
print(myTexts.split(", ", 2))
Output: ['How', 'to', 'split, a, text, in, Python']

Чтобы увидеть, как это работает дальше, разделите строку в приведенном ниже коде, остановив ее на второй точке:

 myTexts = 'How.to split.a text.in.Python'
print(myTexts.split(".", 2))
Output: ['How', 'to split', 'a text.in.Python']

Хотя метод split () не разбивает строки на алфавиты, этого можно добиться с помощью цикла for :

 myTexts = 'How to split a text in Python'
Alphabets = []
for each in myTexts:
alphas = each
Alphabets.append(alphas)
print(Alphabets)

Связанный: Как добавить список в Python

Вместо добавления к списку, как мы это делали в приведенном выше коде, вы можете сократить код, используя понимание списка :

 y = [each for each in myTexts]
print(y)

Создайте счетчик слов с помощью функции разделения Python

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

 myTexts = 'How to split a text in Python'
print(len(myTexts.split()))
Output: 7

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

Затем сначала разделите текст и выполните счет, вернув длину результирующего разделения с помощью встроенной функции len () :

 def countWords(file):
myFile = open(file, 'r')
File = myFile.read()
splitString = File.split()
return len(splitString)
print(countWords('[Path to Yourfile.txt]'))

Хотя это немного сложно, вы также можете сделать это, используя только цикл for :

 def countWords(file):
myFile = open(file, 'r')
File = myFile.read()
File = [File]
for files in File:
return files.count(' ') + 1
print(countWords('[Path to Yourfile.txt]'))

Связанный: Как открывать, читать и записывать в файл в Python

Чтобы цикл for читал каждое слово отдельно, вы должны вставить свой файл в отдельный список, как мы это сделали в приведенном выше коде. Кроме того, принудительно подсчитайте количество слов, оставив пробел между пустыми кавычками в круглых скобках. В противном случае вы получите неверный результат.

Таким образом, код работает, подсчитывая пробелы между каждым словом, а затем прибавляя 1 ко всему счету, чтобы получить фактическое количество слов.

Упростите свой код

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

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