Čítanie a zápis súborov v Pythone

Reading Writing Files With Python



Súbory slúžia na ukladanie a organizovanie údajov na disku. Súbory často používame, keď potrebujeme natrvalo uložiť údaje na pevný disk. Povedzme napríklad, že budujeme softvérový systém, ktorý uchováva záznamy o študentoch. Teraz musíme údaje študentov uložiť natrvalo pre budúce použitie. Na tento účel môžeme použiť súbory na ukladanie údajov a neskôr môžeme tieto súbory otvoriť a kedykoľvek získať prístup k uloženým údajom.

Čítanie a zápis súborov sú v Pythone veľmi bežnou funkciou. V Pythone je ľahké vytvárať, čítať a upravovať súbory. Python má vstavané funkcie na čítanie a zápis súborov. Súbory môžete otvárať, písať a čítať pomocou vstavaných funkcií Pythonu. Operácie so súborom sa vykonávajú v nasledujúcom poradí:







  • Otvorte súbor
  • Súbor na čítanie/zápis
  • Zavrieť súbor

Pomocou Pythonu môžete vytvárať textové a binárne súbory. Textové súbory ukladajú údaje vo forme znakov a každý riadok končí znakom nového riadka („ n“). V binárnych súboroch sú údaje uložené vo forme bajtov (1 a 0).



V tomto článku sa naučíte:



  • Niektoré z rôznych režimov súborov v Pythone
  • Ako otvoriť súbor
  • Ako vytvoriť súbor
  • Ako zapisovať údaje do súboru
  • Ako čítať súbor

Rôzne režimy súborov v Pythone

Režimy v Pythone opisujú typ operácie, ktorá sa má so súborom vykonať. Pri otváraní súboru musíte zadať režim. Každý súbor má popisovač súboru. Popisovač súboru funguje ako kurzor, ktorý určuje, kam sa majú údaje zapisovať a čítať. Je to typ ukazovateľa polohy. Nasledujúce položky obsahujú niektoré z rôznych režimov prístupových súborov v Pythone:





Režim Popis
r Otvorí súbor v režime čítania. Tento režim je predvolene vybratý, ak pri otváraní súboru v Pythone nedefinujete žiadny režim.
v Zapíše súbor. Tento režim vytvorí súbor, ak súbor ešte neexistuje, a prepíše údaje v súbore.
r+ Slúži na čítanie a zápis súboru. Ak súbor neexistuje, zobrazí sa chyba.
do Otvorí súbor v režime pripojenia. Rukoväť súboru sa nachádza na konci súboru. Tento režim neprepíše existujúce údaje, ale začne zapisovať údaje na konci súboru. Ak súbor neexistuje, vytvorí sa nový súbor.
a + Otvorí súbor na čítanie a zápis. Tým sa súbor otvorí v režime pripojenia na zápis. Údaje sa vložia na koniec súboru. Ak súbor neexistuje, vytvorí sa nový súbor.
t Otvorí súbor v textovom režime.

Ako otvoriť súbor

Na otvorenie súboru v Pythone použite vstavaný modul otvorené() funkciu. Funkcia open () berie ako vstup dva argumenty, tj. Názov súboru a režim prevádzky. Táto funkcia vráti objekt súboru ako výstup. Na používanie funkcie open () nie je potrebné importovať žiadny modul. Nasleduje syntax funkcie open ():

file_object= otvorené(názov súboru,režim)

Tu „názov_súboru“ predstavuje názov skutočného textového súboru, zatiaľ čo „režim“ predstavuje režim prístupu k súboru alebo režim prevádzky súboru. Tiež môžete zadať r pred „názov_súboru“, ak názov súboru obsahuje špeciálne znaky. R sa umiestni nasledovne:



=file_object= otvorené(rfile_name,režim)

Názov súboru môže byť napríklad: F: newfolder myfile.txt

Ako vytvoriť súbor

Na vytváranie súborov v Pythone je možné použiť funkciu open (). Na vytvorenie súboru použite režim pripojenia (a) vo funkcii open (). Vytvorte súbor pomocou nižšie uvedeného kódu:

súbor = otvorené('sample.txt',„do“)

Tu sa vytvorí nový súborový objekt. Objekt súboru má názov súbor. Názov novovytvoreného textového súboru je sample.txt. Textový súbor sa otvorí v režime pridávania. Vytvorí nový súbor, ak súbor ešte neexistuje. Po vytvorení súboru ho musíte zavrieť nasledujúcim spôsobom:

súbor.Zavrieť()

Na zatvorenie súboru slúži vstavaná funkcia close ().

Ako zapisovať údaje do súboru

Na zápis údajov do súboru slúžia v Pythone dve funkcie:

  1. napísať ()
  2. spisové linky ()

Funkcia write () sa používa na zápis údajov z jedného riadka alebo jedného reťazca do súboru, zatiaľ čo funkcia writeelines () sa používa na zápis viacerých riadkov údajov do textového súboru. Pozrime sa na niekoľko príkladov zapisovania údajov do súboru.

Použitie funkcie write ()

V tomto prípade používame funkciu write () na zápis údajov do súboru. Súbor sa otvorí v režime zápisu. n je určený na zadanie konca riadka.

# vytvorenie nového objektu súboru a otvorenie súboru v režime písania
súbor=otvorené('sample.txt','in')
# zapisovanie jedného riadka do súboru

súbor.písať('Vitajte v linuxhint n')
# zápis ďalšieho riadka do súboru
súbor.písať('Vitaj späť')

#zatvorenie súboru
súbor.Zavrieť()

Výkon

Riadky boli napísané v textových súboroch.

Ak otvoríme súbor v režime písania a požiadame funkciu write (), aby do súboru zapísala viac riadkov, prepíše predchádzajúce údaje a do textového súboru sa pridajú nové údaje.

# vytvorenie nového objektu súboru a otvorenie súboru v režime písania
súbor=otvorené('sample.txt','in')
# zapisovanie jedného riadka do súboru

súbor.písať('Ahojte všetci n')
# zápis ďalšieho riadka do súboru
súbor.písať(„Toto je nahradený reťazec“)

#zatvorenie súboru
súbor.Zavrieť()

Výkon

Na výstupe je vidieť, že predchádzajúce údaje sú nahradené a na ich miesto v textovom súbore sú pridané nové údaje.

Ak chceme v súbore zachovať predchádzajúce aj nové údaje, môžeme súbor otvoriť v režime pridávania takto:

# vytvorenie nového objektu súboru a otvorenie súboru v režime pripojenia
súbor=otvorené('sample.txt',„do“)
# zapisovanie jedného riadka do súboru

súbor.písať('Ahojte všetci n')
# zápis ďalšieho riadka do súboru
súbor.písať(„Toto je nahradený reťazec n')
# zápis ďalšieho nového riadka do súboru
súbor.písať(„Toto je novo pridaný reťazec reťazcov n')
#zatvorenie súboru
súbor.Zavrieť()

Výkon

Použitie funkcie writeelines ()

Funkcia writeelines () sa používa na zápis viacerých riadkov do textu nasledovne:

# vytvorenie nového objektu súboru a otvorenie súboru v režime písania
súbor=otvorené('file1.txt','in')
# ukladanie údajov viacerých reťazcov do premennej
p = ['Ahojte všetci n','Vitajte v linuxhint n','používame funkciu writeelines n']
# pomocou funkcií writeelines na zápis údajov do súboru
súbor.spisové linky(p)
#zatvorenie súboru
súbor.Zavrieť()

Výkon

Ako čítať súbor

Ak chcete čítať súbor v Pythone, najskôr ho otvorte v režime čítania. V Pythone sú tri vstavané funkcie na čítanie súboru. Patria sem nasledujúce:

  1. čítať()
  2. readline ()
  3. readlines ()

čítať(): Slúži na čítanie údajov zo súboru; vráti celé údaje vo forme reťazca.

readline (): Načíta riadok údajov zo súboru; vráti iba prvý riadok.

readlines (): Načíta všetky existujúce riadky zo súboru; vráti ho vo forme zoznamu.

Funkcia seek () sa používa na zmenu polohy rukoväte súboru. Pri čítaní údajov v súbore sa popisovač súboru sám umiestni na koniec súboru. Rukoväť súboru je teda ako kurzor, pričom funkcia move () slúži ako prostriedok na pohyb kurzora.

Pozrime sa na príklad čítania údajov zo súboru.

# otvorenie súboru v režime čítania
súbor=otvorené('file1.txt','r')
# pomocou funkcie read () na čítanie údajov zo súboru
# ukladanie riadkov do premennej
údaje=súbor.čítať()
# tlač údajov
vytlačiť('Toto je výstup funkcie read (): n')
vytlačiť(údaje)

# pomocou funkcie seek () spustite umiestnenie súboru
súbor.hľadať(0)
# pomocou funkcie readline () na čítanie údajov zo súboru
# ukladanie riadkov do premennej
údaje=súbor.readline()
# tlač údajov
vytlačiť('Toto je výstup z funkcie readline (): n')
vytlačiť(údaje)

# pomocou funkcie seek () spustite umiestnenie súboru
súbor.hľadať(0)
# pomocou funkcie readlines () na čítanie údajov zo súboru
# ukladanie riadkov do premennej
údaje=súbor.readlines()
# tlač údajov
vytlačiť('Toto je výstup funkcie readlines (): n')
vytlačiť(údaje)
#zatvorenie súboru
súbor.Zavrieť()

Výkon

Záver

Často je potrebné uložiť informácie alebo údaje do súboru. V Pythone môžete ľahko vytvárať, písať a čítať súbory pomocou vstavaných funkcií Pythonu. Ak chcete čítať, písať a vytvárať súbory, nie je potrebné do programu importovať ďalšie moduly. Pri používaní súborov môžete tiež použiť viacero vstavaných režimov prístupu. V tomto článku sme vám vysvetlili, ako čítať a písať súbory v Pythone, na niekoľkých jednoduchých príkladoch.