Python reťazec | Split () a ako ho používať

© metamorworks / Shutterstock.com

Python je najpopulárnejší programovací jazyk na svete a je to vďaka nástrojom ako Reťazec | Rozdeliť (). Vidíte, Python obsahuje mnoho natívnych skratiek a alternatívnych spôsobov kódovania, čo novým programátorom nekonečne uľahčuje život.

Reťazec | Split() je jednou z takýchto metód a bude sa hodiť pri práci s reťazcami, textovými dokumentmi alebo dlhými databázami. Tento článok vám povie všetko, čo o ňom potrebujete vedieť, od jeho syntaxe až po najčastejšie chyby, ktoré nováčikov robia a ako sa im vyhnúť.

Poďme sa ponoriť!

Čo je reťaz | Split() metóda?

Pri kódovaní v Pythone môžeme pracovať s obrovským množstvom údajov. Tieto údaje dostávajú názov alebo triedu podľa ich povahy. Reťazce sú triedou údajov, ktoré zvyčajne obsahujú text, čísla a ďalšie informácie zobrazené ako znaky Unicode.

K triedam môžete pristupovať pomocou rôznych nástrojov natívne zahrnutých v Pythone. Split() je jednou z týchto preddefinovaných tried a pracuje výlučne s reťazcami.

Reťazce majú svoju vlastnú kolekciu metód. Metódy fungujú ako funkcia špeciálne navrhnutá pre jednu triedu a nemôžu fungovať v žiadnej inej okrem priradenej triedy.

Metóda split() teda môže (ako názov napovedá) rozdeliť reťazec a potom vrátiť nový zoznam na základe výsledkov. Môžeme špecifikovať, čo chceme, aby to vracalo na základe určitých parametrov, ale poďme najprv k základom.

Reťazec | Syntax Split().

Syntax pri práci s Split() je veľmi jednoduchá, vďaka čomu je skutočne príťažlivá pre nových aj skúsených programátorov.

Najprv vytvoríme reťazcovú premennú pripojenú k metóde. Potom prvý parameter v zátvorkách, nazývaný oddeľovač, definuje, kedy sa reťazec rozdelí. Ak nie je definovaný, akékoľvek biele miesto bude fungovať ako oddeľovač.

Druhý parameter, maximálne rozdelenie, je maximálny počet delení reťazca. Ak to neuvedieme, tak je štandardne nastavené -1, čo znamená nekonečný počet dielikov.

Teraz sa pozrime, ako to celé vyzerá:

©Histoire-Informatique.com

Ako vidíte, vytvorili sme nový zoznam so slovami z pôvodného reťazca.

V tomto príklade nie sú špecifikované parametre, čo znamená, že separátor a parametre maxsplit sú ponechané vo svojom predvolenom stave. Takže pôvodný reťazec sa rozdelí vždy, keď je medzera, toľkokrát, ako je to možné.

Vzorové kódy

Pozrime sa, ako funguje Split, keď definujeme a oddeľovač.

©Histoire-Informatique.com

Ako vidíte, v tomto príklade sme špecifikovali parameter oddeľovača, kde sme chceli, aby bol reťazec rozdelený. Treba poznamenať, že aj keď sme ako príklady použili interpunkčné znamienka, parameter oddeľovača môže byť všetko, čo potrebujete. Vytlačený kód je v oboch prípadoch rovnaký.

Reťazec | Split() s maximálnym počtom rozdelení

Keď parameter maxsplit dostane hodnotu, spätná väzba sa zastaví na uvedenom čísle.

©Histoire-Informatique.com

Ako môžete vidieť, rozdeliť () Metóda číta kód zľava doprava, čo znamená, že ak zadáme maximálne 1 rozdelenie v tomto reťazci so 4 prvkami, dostaneme prvý prvok v samostatnom reťazci z nasledujúcich troch.

Prečo používať reťazec | Rozdeliť ()?

Práve sme videli, čo dokáže metóda rozdelenia na jednoduchých príkladoch, ale ani zďaleka neukazujú skutočnú situáciu.

Teraz si nájdite chvíľu a predstavte si, že pracujete s veľmi rozsiahlym dokumentom, plným textu a obsahu, ktorý potrebujete spracovať. Projekty Pythonu sa zvyčajne zaoberajú veľkým množstvom údajov, takže sú dosť presné.

Vtedy môžete oceniť plnú silu funkcie split().

Akýkoľvek text môžete previesť na veľké alebo malé písmená, vytvoriť zoznam položiek alebo nahradiť obsah kombináciou iných metód reťazca.

Pomocou metódy split() môžete upraviť ľubovoľný textový dokument, ako keby to bol reťazec. Stačí zadať parametre (ak je to potrebné) a môžete začať. Vytvorí sa nový zoznam pripravený na akékoľvek zmeny, na ktoré si spomeniete.

Napíšme si nejaký vzorový text, aby sme ho mohli spracovať. Predstavme si, že ide o .txt dokument, ktorý importujeme do kódu:

©Histoire-Informatique.com

Teraz, keď máme dokument, pozrime sa, ako funguje syntax.

©Histoire-Informatique.com

Funkcia „with“ je kontextový manažér, ktorý nám umožňuje volať a používať súbor v projekte Python.

Použitím metódy read() uložíte dokument do novej premennej. Potom aplikujeme Split() na premennú obsahujúcu text a nastavíme výkričník ako oddeľovač. Potom sa vytvorí nový zoznam položiek.

Nakoniec sa každá položka v zozname vytlačí pomocou cyklu for. Poďme sa pozrieť na výstup:

©Histoire-Informatique.com

Je to záchranca pri práci s dlhými textovými dokumentmi! Môžete začať vidieť, že metóda string.split() má skutočnú užitočnosť: šetrí čas a zdroje a zároveň robí kód prehľadnejším a ľahšie laditeľným.

Časté chyby, ktorým sa treba vyhnúť

Bežnou chybou pri použití funkcie split() je zadanie oddeľovača alebo znaku, ktorý vybraný reťazec neobsahuje. Pozrime sa, čo by Split() vrátilo v tomto prípade:

©Histoire-Informatique.com

Ako vidíte, Split() nevyvolá chybu, ale namiesto toho vytlačí jednu položku zo zoznamu obsahujúceho reťazec. V skutočnosti to môže byť horšie, ako keď niektorá časť vášho kódu vyvolá chybu, pretože môže byť ťažšie nájsť a odladiť. Majte to na pamäti pri práci s veľkými databázami, pretože táto chyba môže spôsobiť, že váš kód vytvorí nezmyselné dátové reťazce.

Ďalšou bežnou situáciou je prijatie skupiny po sebe nasledujúcich bielych miest v jednom reťazci. Je to do značnej miery spôsobené tým, ako táto metóda interpretuje parametre, ktoré jej dávame.

Keď sa v reťazci objavia dve alebo viac bielych miest za sebou, funkcia Split() s ním zaobchádza, ako keby to bol jeden vložený prázdny znak.

Pozrime sa na príklad:

©Histoire-Informatique.com

Teraz dostaneme niečo úplne iné, keď zadáme medzeru ako oddeľovač. Vrátený výsledok sa bude líšiť, pretože Split() považuje dve biele medzery navyše za odlišné znaky.

©Histoire-Informatique.com

Môže to byť zradná chyba, pretože možno neviete, aké parametre zadať, aby ste dosiahli požadovaný výnos. Skúste preto napísať oba argumenty a vyberte si ten, ktorý vráti to, čo potrebujete. Zvyknite si tiež kontrolovať reťazec, s ktorým pracujete, aby ste sa vyhli chybám.

Záver: Python String | Rozdeliť a ako ho použiť

Bola to poriadna jazda! Zopakujme si, čo sme sa naučili.

Split() je jednoduchá, ale neuveriteľne užitočná metóda, ktorá nám umožňuje manipulovať s akýmikoľvek informáciami uloženými ako reťazec, ako sú mená, adresy a akékoľvek údaje reprezentované znakmi Unicode.

Pre zaujímavé kombinácie môžete použiť funkciu split() s inými metódami reťazca, ako sú slice() a format(). Ako sme videli v príkladoch vyššie, syntax je jednoduchá a ľahko použiteľná, vďaka čomu bude váš kód vyzerať profesionálnejšie, efektívnejšie a ľahšie sa ladí.

Metódu split() zistíte najmä pri práci s dlhými textovými dokumentmi alebo dlhými databázami reprezentovanými ako reťazce. Či už ste herný programátor alebo dátový analytik, táto metóda vám určite pomôže na vašej programovacej ceste.

Teraz je čas otvoriť editor kódu a vyskúšať Split() vo svojich projektoch. Veľa štastia!

Python reťazec | Split() a ako ho používať FAQ (Často kladené otázky)

Kedy bol vydaný Python?

Python bol vydaný v roku 1991 jeho tvorcom Guidom van Rossumom ako nástupca programovacieho jazyka ABC. Python 2.0 sa prvýkrát objavil v roku 2000. Aktuálna verzia, Python 2.7.18, bola vydaná v roku 2020.

Aký je rozdiel medzi metódou a funkciou?

Technicky sú rovnaké, ale vo všeobecnosti sa vzťahujú na rôzne úlohy. Metóda je funkcia, ktorá môže fungovať iba v určitej triede. Na druhej strane môžete priradiť funkcie na prácu s akýmkoľvek typom premennej.

Je Python populárny programovací jazyk?

Spolu s C, Java a mnohými ďalšími je Python jedným z najpopulárnejších programovacích jazykov na svete vďaka svojej jednoduchosti a použiteľnosti v rastúcom svete analýzy údajov.

Môžem použiť funkciu Split() na vrátenie časti reťazca?

Nie Na takúto úlohu budete musieť použiť iný nástroj Pythonu s názvom operátor Slicing. Metóda Split vždy vráti celý reťazec oddelený do nového zoznamu.

Je Split() k dispozícii v inom programovacom jazyku?

Áno. Split() je metóda natívne zastúpená v mnohých programovacích jazykoch okrem Pythonu, ako sú C a Java. Každý jazyk používa inú syntax, ale nakoniec metóda vedie k podobným výsledkom.

Čítať tiež