Introduction
Jednou z hlavných funkcií programovacích jazykov je pomôcť vám pracovať s dátami. To zahŕňa zápis, čítanie, ukladanie, ako aj prenos dát. Python je jedným z najpopulárnejších programovacích jazykov. Ak plánujete používať Python, mali by ste mať základnú predstavu o tom, ako používať rôzne typy súborov. Najjednoduchším typom súborov je formát txt alebo čistý textový súbor. Predstavte si, že máte program, ktorý kontroluje prístup používateľov. Samotný zoznam bude uložený ako textový súbor. Takže aj keď pre určité korporácie môžete použiť iný program, hodnoty budete extrahovať z textového dokumentu. Preto je dôležité porozumieť formátu textových súborov.
V tomto návode, začneme stručným prehľadom základných formátov súborov v Pythone. Potom zistíme, ako v programe otvárať, čítať a zapisovať textové súbory.
Before We Begin…
Predtým, ako začneme s návodom, musíte splniť niekoľko požiadaviek. Najprv by ste už mali mať installed Python 3. Okrem toho potrebujete vo svojom systéme lokálne programovacie prostredie. Tento návod je použiteľný pre Ubuntu 16.04 a novšie, Debian 8, CentOS 7, Mac OS X a Windows 10.
Formáty súborov
V Pythone môžete využiť rôzne formáty súborov. V nasledujúcej tabuľke sú uvedené všetky rôzne formáty a miesta, kde ich môžete použiť:
| Typ súboru | Popis |
|---|---|
| txt | Čistý textový súbor ukladá dáta, ktoré predstavujú iba znaky (alebo reťazce) a neobsahujú žiadne štruktúrované metadáta. |
| CSV | Súbor s hodnotami oddelenými čiarkou používa čiarky (alebo iné oddeľovače) na štruktúrovanie uložených dát, čo umožňuje ukladanie dát vo formáte tabuľky. |
| HTML | Súbor HyperText Markup Language ukladá štruktúrované dáta a bežne sa používa na väčšine webových stránok. |
| JSON | JavaScript Object Notation je jednoduchý a efektívny formát, vďaka čomu je jedným z najpoužívanejších formátov na ukladanie a prenos dát. |
V tomto návode podrobnejšie preskúmame formát súborov txt.
Krok 1: Vytvorenie textového súboru
Najprv musíme v Pythone vytvoriť nový textový súbor. Pre lepšie pochopenie si uvedieme príklad s dňami v týždni. Na tento účel otvoríme textový editor, vytvoríme nový súbor txt a pomenujeme ho days.txt. Ďalej zadajme dni v týždni ako jednotlivé riadky v novom súbore:
|
1 2 3 4 5 6 7 |
Pondelok Utorok Streda Štvrtok Piatok Sobota Nedeľa |
Teraz, keď máme obsah, súbor uložíme. Je dôležité si zapamätať, kam súbor ukladáte. Let’s say náš používateľ je sammy. Používateľ uložil súbor na nasledujúcej ceste: /users/sammy/days.txt. Túto cestu budeme používať v budúcich procesoch.
Krok 2: Otvorenie textového súboru
Predtým, ako začnete s písaním programu, musíte v editore vytvoriť súbor. Vytvoríme súbor s názvom files.py a uložíme ho v adresári /users/sammy rovnako ako náš súbor days.txt.
Ak chcete otvoriť akýkoľvek súbor, musíte vytvoriť spojenie medzi súborom na disku a premennou. To je to, čo predstavuje „otvorenie“ súboru. Umiestnenie súboru je určené cestou k súboru. Na otvorenie súboru potrebujete túto cestu. Napríklad cesta k súboru days.txt je nasledujúca: /users/sammy/days.txt. Potom vytvoríme reťazcovú premennú na uloženie týchto dát. Ako uvidíte nižšie, vytvoríme premennú path v skripte files.py a zmeníme ju podľa cesty k days.txt:
|
1 |
path = '/users/sammy/days.txt' |
Potom pomocou funkcie open() otvoríme súbor days.txt. Pre túto funkciu musíte zadať cestu k súboru. Okrem iných parametrov je najdôležitejší parameter režimu (mode). Ide o voliteľný reťazec, ktorý môžete pridať na určenie režimu, v ktorom súbor otvárate. Nasleduje niekoľko možností režimu:
'r’: čítanie'w’: zápis'x’: vytvorenie a zápis nového súboru'a’: pripojenie k súboru (append)'r+’: čítanie a zápis toho istého súboru
Na jednoduché čítanie zo súboru musíte použiť režim 'r’. Spustite funkciu open() a otvorte súbor days.txt. Potom ho priraďte k premennej days_file:
|
1 |
days_file = open(path,'r') |
Step 3: Text File Reading
Po otvorení súboru z neho môžeme čítať prostredníctvom premennej. S čítaním súborov sú spojené tri operácie. Poďme preskúmať všetky tri.
Prvá operácia je <file>.read(). Ukáže vám celý obsah súboru v jednom reťazci:
|
1 |
days_file.read() |
Výstup:
|
1 |
'Monday\nTuesday\nWednesday\nThursday\nFriday\nSaturday\nSunday\n' |
<file>.readline(). Táto operácia vám ukáže ďalší riadok v súbore. V podstate bude čítať súbor riadok po riadku:|
1 |
days_file.readline() |
Výstup:
|
1 |
'Monday\n' |
|
1 |
days_file.readline() |
Výstup:
|
1 |
'Tuesday\n' |
<file>.readlines(). Ukáže vám zoznam všetkých riadkov v súbore. Každá položka predstavuje jeden riadok:|
1 |
days_file.readlines() |
Výstup:
|
1 |
['Monday\n', 'Tuesday\n', 'Wednesday\n', 'Thursday\n', 'Friday\n', 'Saturday\n', 'Sunday\n'] |
Step 4: File Writing
Ďalej sa naučíme, ako zapísať nový súbor. Tento súbor bude mať v našom príklade názov (Days of the Week) a následne dni v týždni.
Na začiatok musíme vytvoriť premennú title :
|
1 |
title = 'Days of the Week\n' |
Ďalej musíme uložiť dni v týždni vo forme reťazcovej premennej. Táto premenná sa bude volať days. Budeme pokračovať v používaní kódu, ktorý sme použili v predchádzajúcich krokoch. Súbor otvoríme v režime na čítanie a výstup uložíme do našej novej premennej days :
|
1 2 3 |
path = '/users/sammy/days.txt' days_file = open(path,'r') days = days_file.read() |
To znamená, že sme vytvorili premenné pre názov, ako aj pre jednotlivé dni v týždni. Teraz môžeme zapísať samotný súbor. Prvým krokom je špecifikovať umiestnenie súboru pomocou adresára /users/sammy/. V ceste tiež špecifikujete nový súbor: /users/sammy/new_days.txt. Cesta k umiestneniu zostane v premennej new_path . Ďalej otvorte súbor v režime zápisu pomocou funkcie open() v režime ‘w’ :
|
1 2 |
new_path = '/users/sammy/new_days.txt' new_days = open(new_path,'w') |
Teraz, keď je súbor otvorený, môžete zadávať dáta pomocou funkcie zápisu <file>.write(). Tu musíte zadať jeden reťazcový parameter. Ak chcete zadať nový riadok, zadajte znak nového riadku. Pre náš súbor najprv zadáme názov a potom dni v týždni. Popritom budeme mať aj niekoľko príkazov print na sledovanie priebehu skriptu:
|
1 2 3 4 |
new_days.write(title) print(title) new_days.write(days) print(days) |
Step 5: File Closing
Keď zatvoríte súbor, ukončíte spojenie medzi súborom na disku a premennou súboru. Keď je súbor zatvorený, môžu k nemu pristupovať iné programy. To tiež pomáha udržiavať súbor a jeho dáta v bezpečí. Preto vždy nezabudnite súbory po dokončení ich spracovania zatvoriť. Na tento účel môžete použiť funkciu <file>.close() :
|
1 2 |
days_file.close() new_days.close() |
Týmto sa končí aspekt spracovania súborov v Pythone.
Step 6: Code Checking
Na záver skontrolujeme kód. Mali by ste to urobiť predtým, ako spustíte kód, ktorý ste napísali. Kód by mal vyzerať nejako takto:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
path = '/users/sammy/days.txt' days_file = open(path,'r') days = days_file.read() new_path = '/users/sammy/new_days.txt' new_days = open(new_path,'w') title = 'Days of the Week\n' new_days.write(title) print(title) new_days.write(days) print(days) days_file.close() new_days.close() |
Po uložení kódu musíte spustiť Python skript. Na to musíte otvoriť terminál:
|
1 |
$ python files.py |
Zobrazí sa nasledujúci výstup:
|
1 2 3 4 5 6 7 8 9 |
Dni v the týždni Pondelok Utorok Streda Štvrtok Piatok Sobota Nedeľa |
Ak chcete skontrolovať svoj kód, otvorte nový súbor, ktorým je new_days.txt. Ak je všetko v poriadku, uvidíte nasledujúce:
|
1 2 3 4 5 6 7 8 9 |
Dni v the týždni Pondelok Utorok Streda Štvrtok Piatok Sobota Nedeľa |
Ak vidíte niečo podobné ako vyššie, úspešne ste dokončili kroky.
Záver
Cieľom tohto návodu bolo naučiť vás o základných formátoch súborov v jazyku Python 3. Medzi nimi je jedným z najdôležitejších formát textového súboru. Preskúmali sme ho podrobnejšie. Teraz ste si dobre vedomí procesu a krokov spojených s otváraním, čítaním, zápisom a zatváraním dátových súborov. Pomocou týchto informácií budete môcť efektívne využívať formát textového súboru vo vašich vlastných skúsenostiach s programovaním v jazyku Python.
Teraz, keď ste sa naučili pracovať s obyčajnými textovými súbormi v jazyku Python, tu sú ďalšie návody z nášho blogu ktoré vám pomôžu začať s používaním jazyka Python:
- Používanie formátovačov reťazcov v jazyku Python 3
- Cykly v jazyku Python 3: Používanie príkazov Break, Continue a Pass
- Python 3: Sprievodca konverziou dátových typov
- Ako prehľadávať webovú stránku pomocou knižnice Scrapy a jazyka Python 3
Príjemné programovanie!
Komentáre
Zatiaľ žiadne komentáre. Buďte prvý.