8. diel - Binárne súbory a serializácia v Pythone
V minulej lekcii, Zápis a čítanie XML súborov v Pythone , sme sa venovali práci s XML súbormi.
V tomto kurze sme si už uviedli niekoľko možností, ako uložiť dáta (prípadne rovno inštancie) do súborov. Či už išlo o formát CSV alebo XML, vždy sme vo finále pracovali s textovými súbormi. Dnes si v tutoriále ukážeme alternatívny spôsob uloženia dát a pobavíme sa o jeho výhodách a nevýhodách.
Binárne súbory
Doteraz sme teda vždy dátové typy previedli na textový reťazec a ten uložili do textového súboru. Pri opätovnom čítaní dát sme ich museli zo stringu potom naparzovať späť na pôvodný dátový typ. Do súboru je možné ale ukladať dáta aj v inej, než textovej podobe. Hovoríme o tzv. binárnych súboroch.
Ako vieme, premenné sú uložené v operačnej pamäti počítača. Fyzicky si pamäť môžeme predstaviť ako naozaj dlhý rad „priehradiek“, kde v každej priehradke môže byť nula alebo jednička. Jednotlivé prvky v priehradkách sú teda bité. S tými sa väčšinou nepracuje jednotlivo, ale rovno po osmikoch, tzv. bajtoch (1 bajt = 8 bitov). Každý objekt z Pythona zaberá v pamäti určitý počet bajtov. Je jedno, či je v čísle uložená hodnota 0 alebo 1.000.000, stále má v pamäti vyhradené tie isté bajty. Pokiaľ budeme chcieť premennú typu int uložiť do súboru, ponúka sa
...koniec náhľadu článku...
Pokračuj ďalej
Minul si až sem a to je super! Veríme, že ti prvé lekcie ukázali niečo nového a užitočného.
Chceš v kurze pokračovať? Prejdi do prémiové sekcie.
Obmedzená ponuka: Nauč sa všetko a ušetri
Obsah článku spadá pod licenciu Premium, kúpou článku súhlasíš so zmluvnými podmienkami.
- Neobmedzený a trvalý prístup k jednotlivým lekciím.
- Kvalitné znalosti v oblasti IT.
- Zručnosti, ktoré ti pomôžu získať vysnívanú a dobre platenú prácu.
Popis článku
Požadovaný článok má nasledujúci obsah:
V tutoriále si predstavíme binárne súbory a knižnicu/modul pickle. Naučíme sa serializovať a deserializovať objekty binárne v Pythone.
Kredity získaš, keď podporíš našu sieť. To môžeš urobiť buď zaslaním symbolickej sumy na podporu prevádzky alebo pridaním obsahu na sieť.