Hur man delar en sträng i Python

Hur man delar en sträng i Python

Att dela en sträng i Python är ganska enkelt. Du kan uppnå detta med Pythons inbyggda 'split ()' -funktion.





De dela() metod i Python separerar varje ord i en sträng med hjälp av ett kommatecken, vilket gör det till en lista med ord. Den här guiden leder dig genom de olika sätten att dela en sträng i Python.





kan du återställa raderade meddelanden på facebook

Hur man använder Python Split -metoden

Som tidigare nämnts är Pythons inbyggda som standard dela() funktion bryter en sträng till enskilda ord åtskilda med kommatecken. Men det accepterar två valfria argument, och så här ser syntaxen ut:





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

När du anger a separeringskriterier , lokaliserar funktionen dessa kriterier inom strängen och initierar en delning vid den punkten. Annars, som standard, delar den strängen var som helst där det finns ett vitt utrymme.

Ta en titt på exemplet nedan för att se hur detta fungerar. Här är vita utrymmen separeringskriterierna som standard, eftersom vi inte angav ett:



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

Låt oss se hur dela() metod fungerar när du anger separeringskriterier. I det här exemplet är ett komma de skiljande kriterierna:

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

För ett bättre grepp delar exempelkoden nedan strängarna varhelst det finns en prick. Så prickarna här är separeringskriterierna:





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

max_split är ett heltal som anger det maximala antalet raster i en sträng. Ännu viktigare, det indikerar den punkt där strängen bryts.

Så du kan inkludera det värdet inom parentes för att bryta strängen vid specifika punkter.





Till exempel bryter koden nedan texterna i två och stannar på det andra komma:

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

För att se hur detta fungerar vidare, separera strängen i koden nedan, så att den stannar på den andra pricken:

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

Medan dela() metod bryter inte strängar till alfabet, du kan uppnå detta med för slinga:

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

Relaterad: Hur man lägger till en lista i Python

Istället för att lägga till en lista som vi gjorde i koden ovan kan du förkorta koden med med hjälp av en listförståelse :

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

Skapa en ordräknare med Python Split -funktionen

Du kan använda Python dela() på många sätt. Till exempel kan du räkna antalet ord efter delning av varje sträng:

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

Ändra koden ovan för att räkna orden i en separat fil. Du kan skapa en funktion för att göra detta. Men här måste du öppna och läsa filen som innehåller texten.

Dela sedan upp texten först och utför en räkning genom att returnera längden på den resulterande delningen med hjälp av den inbyggda len () fungera:

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

Även om det är lite knepigt kan du också göra detta med för endast slinga:

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]'))

Relaterad: Hur man öppnar, läser och skriver till en fil i Python

För att göra för loop läsa varje ord separat, du bör infoga din fil i en separat lista som vi gjorde i ovanstående kod. Dessutom genomdriva ordräkningen genom att lämna ett mellanrum mellan de tomma citattecken inom parentes. Annars ger det dig fel utmatning.

Så koden fungerar genom att räkna mellanrummen mellan varje ord och sedan lägga till 1 till hela räkningen för att få det faktiska antalet ord.

Förenkla din kod

De dela() funktion är ett värdefullt Python -verktyg, och som du har sett kan du använda det för att räkna orden i en fil. Du kan till och med lösa andra problem med det som du vill. Det finns många andra inbyggda funktioner i Python som detta som förenklar komplexa operationer snabbt och effektivt.

Så istället för att skriva långa kodblock är det alltid bra att testa mer effektiva, enklare och snabbare inbyggda metoder för att lösa olika kodningsproblem. Som sagt, det finns många andra sätt att manipulera strängar utöver delning. Du kan alltid prova dem för att förbättra din stränghantering i Python.

Dela med sig Dela med sig Tweet E-post Lär dig Python? Så här manipulerar du strängar

Att använda och manipulera strängar i Python kan verka svårt, men det är bedrägligt enkelt.

Läs Nästa
Relaterade ämnen
  • Programmering
  • Pytonorm
  • Handledning för kodning
Om författaren Idisou Omisola(94 artiklar publicerade)

Idowu brinner för allt smart teknik och produktivitet. På fritiden leker han med kodning och byter till schackbrädet när han har tråkigt, men han älskar också att bryta sig från rutinen då och då. Hans passion för att visa människor vägen kring modern teknik motiverar honom att skriva mer.

Mer från Idowu Omisola

Prenumerera på vårt nyhetsbrev

Gå med i vårt nyhetsbrev för tekniska tips, recensioner, gratis e -böcker och exklusiva erbjudanden!

Klicka här för att prenumerera