Een string splitsen in Python

Een string splitsen in Python

Het splitsen van een string in Python is vrij eenvoudig. U kunt dit bereiken met behulp van de ingebouwde 'split()'-functie van Python.





De splitsen() methode in Python scheidt elk woord in een string met een komma, waardoor het een lijst met woorden wordt. Deze gids leidt je door de verschillende manieren waarop je een string in Python kunt splitsen.





leuke dingen om te doen met gopro

Hoe de Python Split-methode te gebruiken?

Zoals eerder vermeld, is Python standaard ingebouwd splitsen() functie splitst een tekenreeks in afzonderlijke woorden, gescheiden door komma's. Maar het accepteert twee optionele argumenten, en zo ziet de syntaxis eruit:





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

Wanneer u een specificeert scheidingscriteria , de functie lokaliseert die criteria binnen de tekenreeks en start op dat moment een splitsing. Anders wordt de tekenreeks standaard gesplitst overal waar een witruimte is.

Bekijk onderstaand voorbeeld om te zien hoe dit werkt. Hier zijn de witruimten standaard de scheidingscriteria, aangezien we er geen hebben gespecificeerd:



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

Laten we eens kijken hoe de splitsen() methode werkt wanneer u scheidingscriteria opgeeft. In dit voorbeeld is een komma het scheidingscriterium:

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

Voor een beter begrip splitst de onderstaande voorbeeldcode de tekenreeksen waar er een punt is. Dus de punten hier zijn de scheidingscriteria:





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

max_split is een geheel getal dat het maximale aantal onderbrekingen in een tekenreeks aangeeft. Wat nog belangrijker is, het geeft het punt aan waar de string breekt.

U kunt die waarde dus tussen haakjes opnemen om de tekenreeks op specifieke punten te verbreken.





De onderstaande code splitst bijvoorbeeld de teksten in tweeën en stopt op de tweede komma:

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

Om te zien hoe dit verder werkt, scheidt u de tekenreeks in de onderstaande code, zodat deze stopt op de tweede stip:

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

Terwijl de splitsen() methode breekt strings niet in alfabetten, je kunt dit bereiken met de voor lus:

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

Verwant: Een lijst toevoegen in Python

In plaats van toe te voegen aan een lijst zoals we deden in de bovenstaande code, kunt u de code inkorten met: met behulp van een lijst begrip :

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

Maak een woordenteller met de Python Split-functie

Je kunt Python gebruiken splitsen() op veel manieren. U kunt bijvoorbeeld het aantal woorden tellen na het splitsen van elke tekenreeks:

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

Pas de bovenstaande code aan om de woorden in een apart bestand te tellen. U kunt hiervoor een functie maken. Maar hier moet u het bestand met de tekst openen en lezen.

Splits vervolgens eerst de tekst en voer een telling uit door de lengte van de resulterende splitsing te retourneren met behulp van de ingebouwde leen () functie:

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

Hoewel het een beetje lastig is, kun je dit ook doen met de voor alleen lus:

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

Verwant: Een bestand openen, lezen en schrijven in Python

om de . te maken voor lus elk woord afzonderlijk leest, moet u uw bestand in een aparte lijst invoegen, zoals we in de bovenstaande code hebben gedaan. Dwing bovendien het aantal woorden af ​​door een spatie tussen de lege aanhalingstekens tussen haakjes te laten. Anders krijg je de verkeerde output.

Dus de code werkt door de spaties tussen elk woord te tellen en vervolgens 1 op te tellen bij de hele telling om het werkelijke aantal woorden te krijgen.

Vereenvoudig uw code

De splitsen() functie is een waardevolle Python-tool, en zoals je hebt gezien, kun je het gebruiken om de woorden in een bestand te tellen. Je kunt er zelfs andere problemen mee oplossen als je wilt. Er zijn veel andere ingebouwde functies in Python zoals deze die complexe bewerkingen snel en efficiënt vereenvoudigen.

Dus in plaats van lange codeblokken te schrijven, is het altijd handig om efficiëntere, eenvoudigere en snellere ingebouwde methoden uit te proberen om verschillende codeerproblemen op te lossen. Dat gezegd hebbende, er zijn naast splitsen nog veel meer manieren om snaren te manipuleren. Je kunt ze altijd uitproberen om je stringverwerking in Python te verbeteren.

Deel Deel Tweeten E-mail Python leren? Hier leest u hoe u snaren kunt manipuleren

Strings gebruiken en manipuleren in Python kan moeilijk lijken, maar het is bedrieglijk eenvoudig.

Lees volgende
Gerelateerde onderwerpen
  • Programmeren
  • Python
  • Codeerhandleidingen
Over de auteur Idisou Omisola(94 artikelen gepubliceerd)

Idowu is gepassioneerd door alles wat slimme technologie en productiviteit betreft. In zijn vrije tijd speelt hij met coderen en schakelt hij over naar het schaakbord als hij zich verveelt, maar hij vindt het ook heerlijk om af en toe uit de routine te stappen. Zijn passie om mensen de weg te wijzen in moderne technologie motiveert hem om meer te schrijven.

Meer van Idowu Omisola

Abonneer op onze nieuwsbrief

Word lid van onze nieuwsbrief voor technische tips, recensies, gratis e-boeken en exclusieve deals!

Klik hier om je te abonneren