- 1 1. Miks on vaja jagada stringe Pythonis
- 2 2. Stringide jagamine split() meetodiga Pythonis
- 3 3. Stringi jagamine splitlines() meetodiga reavahetuste järgi
- 4 4. Stringide jagamine regulaaravaldiste abil re.split()
- 5 5. Muud kasulikud meetodid: partition() ja rpartition()
- 6 6. Koodinäited ja praktilised rakendused
- 7 7. Kokkuvõte: Stringide jagamine Pythonis
1. Miks on vaja jagada stringe Pythonis
1.1. Stringide töötlemise olulisus
Stringide töötlemine on Pythonis väga oluline. Igapäevases tekstandmete töötlemises, andmeanalüüsi eeltöötluses ja paljudes muudes olukordades on vaja stringe jagada. Näiteks CSV-failide analüüsimisel, kasutaja sisendi töötlemisel või veebiskreipingu kaudu saadud tekstandmete töötlemisel on stringide jagamine asendamatu meetod.
1.2. Mida sellest artiklist õpid
Selles artiklis selgitame laialdaselt, kuidas jagada stringe Pythonis, alates põhilistest meetoditest kuni keerukamate regulaaravaldiste kasutamiseni. Keskendume peamiselt meetoditele nagu split()
, splitlines()
, re.split()
ja lisame ka praktilisi koodinäiteid.
2. Stringide jagamine split() meetodiga Pythonis
2.1. Mis on split() meetod?
split()
on üks kõige põhilisemaid stringide töötlemise meetodeid Pythonis. See jagab stringi määratud eraldaja (delimeetri) järgi ja tagastab tulemuse listina. Vaikimisi kasutatakse eraldajana tühikuid (tühik, tabeldus, reavahetus).
text = "apple banana cherry"
fruits = text.split()
print(fruits) # Väljund: ['apple', 'banana', 'cherry']
2.2. Eraldaja määramine
Stringi saab jagada ka konkreetse eraldaja järgi. Näiteks kui string on eraldatud koma või semikooloniga, saab seda teha järgmiselt:
text = "apple,banana,cherry"
fruits = text.split(",")
print(fruits) # Väljund: ['apple', 'banana', 'cherry']
2.3. Jagamise kordade piiramine
split()
meetodi teise argumendina saab määrata, mitu korda string jagatakse.
text = "apple,banana,cherry,orange"
fruits = text.split(",", 2)
print(fruits) # Väljund: ['apple', 'banana', 'cherry,orange']
See on kasulik, kui soovid jagada ainult osaliselt ja jätta osa stringist muutmata.

3. Stringi jagamine splitlines() meetodiga reavahetuste järgi
3.1. splitlines() meetodi ülevaade
splitlines()
jagab stringi reavahetuste järgi. See on eriti kasulik, kui soovid töödelda faili sisu rea kaupa või tegeleda andmetega, mis sisaldavad reavahetusi.
text = """apple
banana
cherry"""
lines = text.splitlines()
print(lines) # Väljund: ['apple', 'banana', 'cherry']
3.2. Reavahetuste säilitamine
splitlines()
meetod võimaldab valida, kas reavahetused säilitatakse või mitte. Kui annad argumendiks True
, jäävad reavahetused alles.
text = """applenbananancherry"""
lines = text.splitlines(True)
print(lines) # Väljund: ['applen', 'bananan', 'cherry']
See on kasulik, kui soovid säilitada algse vormingu.
4. Stringide jagamine regulaaravaldiste abil re.split()
4.1. re.split() põhikasutus
Kasutades Pythoni re
moodulit, saab stringe jagada regulaaravaldiste abil. See on kasulik, kui on vaja kasutada mitut erinevat eraldajat korraga.
import re
text = "apple123banana456cherry"
fruits = re.split(r'd+', text)
print(fruits) # Väljund: ['apple', 'banana', 'cherry']
4.2. Mitme eraldajaga jagamine
Regulaaravaldise abil saab määrata mitu eraldajat, näiteks koma, semikoolon ja tühik:
text = "apple, banana; cherry"
fruits = re.split(r'[;, ]+', text)
print(fruits) # Väljund: ['apple', 'banana', 'cherry']
4.3. Keerukamad mustrid
re.split()
on väga võimas meetod keeruliste mustrite järgi jagamiseks. Näiteks saab stringi jagada konkreetsete numbrikombinatsioonide või mustrite alusel.
text = "apple100banana200cherry"
fruits = re.split(r'd+', text)
print(fruits) # Väljund: ['apple', 'banana', 'cherry']

5. Muud kasulikud meetodid: partition() ja rpartition()
5.1. partition() meetodi kasutamine
partition()
jagab stringi kolmeks osaks, kasutades määratud eraldajat. Eraldaja lisatakse tulemusesse, mis teeb selle kasulikuks, kui eraldaja on oluline.
text = "apple@banana@cherry"
parts = text.partition("@")
print(parts) # Väljund: ('apple', '@', 'banana@cherry')
5.2. rpartition() kasutamine paremalt
rpartition()
toimib samamoodi kui partition()
, kuid otsib eraldajat paremalt poolt. See on kasulik, kui soovid stringi jagada viimase eraldaja järgi.
text = "apple@banana@cherry"
parts = text.rpartition("@")
print(parts) # Väljund: ('apple@banana', '@', 'cherry')
6. Koodinäited ja praktilised rakendused
6.1. Näide kasutaja sisendi töötlemisest
Näiteks, kui kasutaja sisestab andmed koma-eraldajaga, saab neid töödelda järgmiselt:
user_input = "name:apple, age:30, city:Tokyo"
info = user_input.split(", ")
for item in info:
key, value = item.split(":")
print(f"{key}: {value}")
6.2. Failist andmete töötlemine
Faili andmete töötlemisel on sageli vaja jagada sisu rea kaupa:
with open('data.txt', 'r') as file:
lines = file.read().splitlines()
print(lines)

7. Kokkuvõte: Stringide jagamine Pythonis
7.1. Kokkuvõte
Python pakub mitmeid meetodeid stringide jagamiseks. Kasutades split()
, splitlines()
, re.split()
, partition()
ja teisi meetodeid, saab andmeid tõhusalt eeltöödelda ja analüüsida.
7.2. Järgmised sammud
Proovi artiklis tutvustatud meetodeid väikestes projektides või skriptides, et selgitada välja, milline neist sobib kõige paremini sinu vajadustele.