Fájlok írása Pytonban!
Elkészült a Python nyelv Szövegfájlok írása tananyagunk! Jó tanulást, jó gyakorlást!

<info9>

Szövegek darabolása: a Split

Itt a húsvét!

Szeretnél az ünnepek alatt is gyakorolni? Vár az Easter Bug Hunt játékunk! Csatlakozz, és keresd meg az összes hibát - akár még jutalom is ütheti a markod!

Irány a játék

Gyakran előfordul, főleg fájlból történő beolvasásnál, hogy olyan adatfájllal dolgozunk, amelynek egy sorában több különböző adat is van, például pontosvesszővel, szóközzel, vagy tabulátorral elválasztva. Nézzük mondjuk ezt a mintafájlt:

Kovács Péter;1999;170
Szabó András;1987;173
Tóth Noémi;2001;167
Szabados Petra;1998;177

Ebben a fájlban minden sorban 3 adat található:

Ahhoz, hogy ezeket az adatokat külön-külön is hasznosítani tudjuk, egy sor beolvasása után a benne található 3 információt szét kell vágnunk. Erre használhatjuk a szövegek Split nevű metódusát. A Split-nek 1 darab paramétere van, egy karaktert kell neki átadnunk, aminél szét szeretnénk szeletelni a szöveget. Végeredményként egy szövegekből álló tömböt ad vissza, annyi elemmel, ahány darab keletkezett. Nézzünk egy mintát:

Ne feledd!
A karaktereket idézőjelok ( " ) helyett aposztrófok ( ' ) közé kell helyezni, ahogy a kódrészletben is látható a Split-ben.
string sor = "Kovács Péter;1999;170";
string[] darabok = sor.Split(';');

A kódrészlet lefutása után a darabok tömbben 3 elem található:

darabok[0] = "Kovács Péter"
darabok[1]="1999"
darabok[2]="170"

Érdemes megjegyezni, hogy ezek a darabok - a tartalmuktól függetlenül - mind szöveg adattípussal rendelkeznek, ha tehát egy számként szeretnénk dolgozni velük, akkor át kell őket konvertálni a megfelelő konvertáló függvénnyel, például így:

int szuletett = Convert.ToInt32(darabok[1]);

Speciális karakterek

Előfordulhat olyan eset, hogy a Split-tel valamilyen speciális karakternél szeretnénk elvagdosni a szövegünket, például sortöréseknél, vagy tabulátoroknál. Ezeket a speciális karaktereket nem tudjuk csak úgy begépelni a kódba, mert akkor a kódunk nem fog megfelelően működni, helyette az alábbi speciális jelölőket kell használnunk:

Új sor: \n

Tabulátor: \t

Próbáld ki!