Разделянето на низ в Python е доста просто. Можете да постигнете това с помощта на вградената в Python функция "split ()".
The разделяне () метод в Python разделя всяка дума в низ с помощта на запетая, превръщайки я в списък с думи. Това ръководство ще ви преведе през различните начини, по които можете да разделите низ в Python.
Как да използваме метода на разделяне на Python
Както бе споменато по-рано, по подразбиране Python е вграден разделяне () функция разбива низ на отделни думи, разделени със запетаи. Но той приема два незадължителни аргумента и ето как изглежда синтаксисът:
string.split ([отделни критерии], [точка на прекъсване или max_split])
Когато посочите критерии за разделяне, функцията локализира тези критерии в низа и инициира разделяне в този момент. В противен случай по подразбиране той разделя низа навсякъде, където има празно пространство.
Погледнете примера по-долу, за да видите как работи това. Тук белите интервали са критериите за разделяне по подразбиране, тъй като не сме посочили такъв:
myTexts = 'Как да разделя текст в Python'
splitString = myTexts.split ()
печат (splitString)
Изход: ['How', 'to', 'split', 'a', 'text', 'in', 'Python']
Нека да видим как разделяне () метод работи, когато зададете критерии за разделяне. В този пример запетая е критерият за разделяне:
myTexts = 'Как да разделя, текст в, Python'
печат (myTexts.split (","))
За по-добро разбиране, примерният код по-долу разделя низовете навсякъде, където има точка. Така че точките тук са критериите за разделяне:
myTexts = 'Как да разделя. текст в. Python '
печат (myTexts.split ("."))
Изход: ['Как да разделя', 'текст в', 'Python']
max_split е цяло число, което указва максималния брой прекъсвания в низ. По-важното е, че посочва точката, в която низът се прекъсва.
Така че можете да включите тази стойност в скобите, за да прекъснете низа в определени точки.
Например, кодът по-долу разделя текстовете на две и спира на втората запетая:
myTexts = 'Как, да, разделя, a, текст, в, Python'
print (myTexts.split (",", 2))
Изход: ['How', 'to', 'split, a, text, in, Python']
За да видите как работи по-нататък, отделете низа в кода по-долу, като го спрете на втората точка:
myTexts = 'How.to split.a text.in. Python '
печат (myTexts.split (".", 2))
Изход: ['How', 'to split', 'a text.in. Python ']
Докато разделяне () метод не разбива низове на азбуки, можете да постигнете това с помощта на за цикъл:
myTexts = 'Как да разделя текст в Python'
Азбуки = []
за всеки в myTexts:
алфа = всеки
Alphabets.append (alphas)
печат (азбуки)
Свързани: Как да добавя списък в Python
Вместо да добавяте към списък, както направихме в горния код, можете да съкратите кода с използвайки разбиране на списък:
y = [всеки за всеки в myTexts]
печат (y)
Създайте брояч на думи с функцията за разделяне на Python
Можете да използвате Python разделяне () по много начини. Например можете да преброите броя на думите след разделяне на всеки низ:
myTexts = 'Как да разделя текст в Python'
печат (len (myTexts.split ()))
Изход: 7
Променете горния код, за да преброите думите в отделен файл. Можете да създадете функция за това. Но тук трябва да отворите и прочетете файла, съдържащ текста.
След това първо разделете текста и изпълнете преброяване, като върнете дължината на полученото разделяне с помощта на вградения len () функция:
def countWords (файл):
myFile = отворен (файл, 'r')
Файл = myFile.read ()
splitString = File.split ()
return len (splitString)
print (countWords ('[Path to Yourfile.txt]'))
Въпреки че е малко сложно, можете да направите това и с помощта на за цикъл само:
def countWords (файл):
myFile = отворен (файл, 'r')
Файл = myFile.read ()
Файл = [Файл]
за файлове във файл:
връщане на файлове.count ('') + 1
print (countWords ('[Path to Yourfile.txt]'))
Свързани: Как да отворите, прочетете и напишете във файл в Python
За да направите за цикъл прочетете всяка дума поотделно, трябва да вмъкнете файла си в отделен списък, както направихме в горния код. Освен това наложете броя на думите, като оставите интервал между празните кавички в скобите. В противен случай ви дава грешен изход.
Така че кодът работи, като преброява интервалите между всяка дума и след това добавя 1 към целия брой, за да получи действителния брой думи.
Опростете кода си
The разделяне () функция е ценен инструмент на Python и както видяхте, можете да го използвате, за да преброите думите във файл. Можете дори да решавате други проблеми с него, както желаете. Има много други вградени функции в Python като тази, които опростяват сложни операции бързо и ефективно.
Така че вместо да пишете дълги блокове код, винаги е полезно да изпробвате по-ефективни, по-прости и по-бързи вградени методи за решаване на различни проблеми с кодирането. Въпреки това има много други начини за манипулиране на низове в допълнение към разделянето. Винаги можете да ги изпробвате, за да подобрите обработката на низовете си в Python.
Използването и манипулирането на низове в Python може да изглежда трудно, но е измамно просто.
Прочетете Напред
- Програмиране
- Python
- Уроци за кодиране
Idowu е запален по всичко интелигентни технологии и производителност. В свободното си време той се заиграва с кодиране и превключва на шахматната дъска, когато му е скучно, но също така обича да се откъсва от рутината от време на време. Страстта му да показва на хората пътя към съвременните технологии го мотивира да пише повече.
Абонирайте се за нашия бюлетин
Присъединете се към нашия бюлетин за технически съвети, рецензии, безплатни електронни книги и ексклузивни оферти!
Още една стъпка…!
Моля, потвърдете имейл адреса си в имейла, който току що ви изпратихме.