Python

Failide lugemine ja kirjutamine Pythoniga

Failide lugemine ja kirjutamine Pythoniga

Faile kasutatakse kettale andmete salvestamiseks ja korrastamiseks. Me kasutame faile sageli siis, kui peame andmeid püsivalt kõvakettale salvestama. Oletame näiteks, et ehitame tarkvarasüsteemi, mis hoiab üliõpilaste arvestust. Nüüd peame õpilase andmed tulevaseks kasutamiseks jäädavalt salvestama. Sel eesmärgil saame andmete salvestamiseks kasutada faile ja hiljem saame neid faile igal ajal avada ja salvestatud andmetele juurde pääseda.

Failide lugemine ja kirjutamine on Pythonis väga levinud funktsioonid. Pythonis on failide loomine, lugemine ja muutmine lihtne. Pythonil on failide lugemiseks ja kirjutamiseks sisseehitatud funktsioonid. Faile saate avada, kirjutada ja lugeda Pythoni sisseehitatud funktsioonide abil. Failitoimingud tehakse järgmises järjestuses:

Pythoni abil saate luua tekstifaile ja binaarfaile. Tekstifailid salvestavad andmeid märkidena ja iga rida lõpeb uue rea märgiga ('\ n'). Binaarfailides salvestatakse andmed baitide kujul (1 ja 0).

Selles artiklis saate teada:

Erinevad failirežiimid Pythonis

Pythoni režiimid kirjeldavad failiga tehtavate toimingute tüüpi. Faili avamisel peate määrama režiimi. Igal failil on failikäepide. Failikäepide toimib nagu kursor, mis määrab andmete kirjutamise ja lugemise koha. See on teatud asukoha osuti. Järgnevad sisaldavad mõningaid Pythoni juurdepääsufaili režiime:

Režiim Kirjeldus
r Avab faili lugemisrežiimis. See režiim on vaikimisi valitud, kui te ei defineeri Pythonis faili avamisel ühtegi režiimi.
w Kirjutab faili. Selles režiimis luuakse fail, kui faili veel pole, ja kirjutab failis olevad andmed üle.
r+ Kasutatakse faili lugemiseks ja kirjutamiseks. See näitab viga, kui faili pole olemas.
a Avab faili liitmisrežiimis. Faili käepide asub faili lõpus. See režiim ei kirjuta olemasolevaid andmeid üle, vaid alustab andmete kirjutamist faili lõpus. Kui faili pole, luuakse uus fail.
a+ Avab faili lugemiseks ja kirjutamiseks. See avab faili kirjutamise lisamise režiimis. Andmed sisestatakse faili lõppu. Kui faili pole, luuakse uus fail.
t Avab faili tekstirežiimis.

Kuidas faili avada

Faili avamiseks Pythonis kasutage sisseehitatud avatud () funktsioon. Funktsioon open () võtab sisendina kaks argumenti, st.e., faili nimi ja töörežiim. See funktsioon tagastab väljundina faili objekti. Funktsiooni open () kasutamiseks pole vaja ühtegi moodulit importida. Järgmine on funktsiooni open () süntaks:

file_object = avatud ("faili nimi", "režiim")

Siin tähistab 'file_name' tegeliku tekstifaili nime, 'mode' aga failile juurdepääsu või faili töörežiimi. Kui faili nimi sisaldab erimärke, võite asetada r ka faili_nimi ette. R asetatakse järgmiselt:

= file_object = avatud (r „faili_nimi”, „režiim”)

Näiteks võib faili nimi olla: “F: \ newfolder \ myfile.txt ”

Kuidas faili luua

Funktsiooni open () saab kasutada Pythonis failide loomiseks. Faili loomiseks kasutage funktsiooni open () lisamise režiimi (a). Looge fail, kasutades järgmist koodi:

fail = avatud ("näidis.txt "," a ")

Siin luuakse uus failiobjekt. Failiobjekti nimi on “fail."Vastloodud tekstifaili nimi on" näidis.txt.”Tekstifail avatakse liitmisrežiimis. Kui faili pole veel olemas, loob see uue faili. Pärast faili loomist peate selle sulgema järgmisel viisil:

faili.Sulge()

Sisseehitatud funktsiooni close () kasutatakse faili sulgemiseks.

Andmete faili kirjutamine

Failis andmete kirjutamiseks kasutatakse Pythonis kahte funktsiooni:

  1. kirjutama ()
  2. kirjutusliinid ()

Funktsiooni write () kasutatakse ühe rea või ühe stringi andmete kirjutamiseks faili, funktsiooni writelines () aga mitme andmerea kirjutamiseks tekstifaili. Vaatame mõningaid näiteid andmete faili kirjutamise kohta.

Funktsiooni kirjutamine () kasutamine

Selles näites kasutame faili andmete kirjutamiseks funktsiooni write (). Fail avatakse kirjutamisrežiimis. Rea lõppu täpsustamiseks pannakse “\ n”.

# uue faili objekti loomine ja faili avamine kirjutamisrežiimis
fail = avatud ("näidis.txt "," w ")
# ühe rea kirjutamine faili
faili.write ("Tere tulemast linuxhinti \ n")
# veel ühe rea kirjutamine faili
faili.kirjuta ("Tere tulemast tagasi")
#faili sulgemine
faili.Sulge()

Väljund

Ridad on tekstifailidesse kirjutatud.

Kui avame faili kirjutamisrežiimis ja palume kirjutamisfunktsioonil () kirjutada failile rohkem ridu, kirjutab see eelmised andmed üle ja uued andmed lisatakse tekstifaili.

# uue faili objekti loomine ja faili avamine kirjutamisrežiimis
fail = avatud ("näidis.txt "," w ")
# ühe rea kirjutamine faili
faili.kirjuta ("Tere kõigile \ n")
# veel ühe rea kirjutamine faili
faili.write ("See on asendatud string")
#faili sulgemine
faili.Sulge()

Väljund

Väljundis on näha, et varasemad andmed asendatakse ja nende asemele lisatakse uued andmed tekstifailis.

Kui tahame failis hoida nii eelmisi kui ka uusi andmeid, saame faili avada liitmisrežiimis järgmiselt:

# uue faili objekti loomine ja faili avamine liitmisrežiimis
fail = avatud ("näidis.txt "," a ")
# ühe rea kirjutamine faili
faili.kirjuta ("Tere kõigile \ n")
# veel ühe rea kirjutamine faili
faili.write ("See on asendatud string \ n")
# uue uue rea kirjutamine faili
faili.write ("See on äsja lisatud stringi string \ n")
#faili sulgemine
faili.Sulge()

Väljund

Funktsiooni käsuliinide () kasutamine

Funktsiooni writelines () kasutatakse tekstis mitme rea korraga kirjutamiseks järgmiselt:

# uue faili objekti loomine ja faili avamine kirjutamisrežiimis
fail = avatud ("fail1.txt "," w ")
# mitme stringiandme salvestamine muutujasse
str = ["Tere kõigile \ n", "Tere tulemast linuxhinti \ n", "kasutame käsurea funktsiooni \ n"]
# faili andmete kirjutamiseks käsureafunktsioonide abil
faili.kirjutusliinid (str)
#faili sulgemine
faili.Sulge()

Väljund

Kuidas faili lugeda

Pythonis faili lugemiseks avage kõigepealt fail lugemisrežiimis. Pythonis on faili lugemiseks kolm sisseehitatud funktsiooni. Nende hulka kuuluvad järgmised:

  1. loe ()
  2. readline ()
  3. readlines ()

loe (): Kasutatakse failist andmete lugemiseks; tagastab kogu andmed stringi kujul.

readline (): Loeb failist rida andmeid; tagastab ainult esimese rea.

readlines (): Loeb failist kõik olemasolevad read; tagastab selle loendi kujul.

Funktsiooni seek () kasutatakse faili käepideme asukoha muutmiseks. Failis olevate andmete lugemisel asetab failikäepide end faili lõppu. Seega on failikäepide nagu kursor, kus kursori liigutamise vahendina on funktsioon seek ().

Vaatame näidet failist andmete lugemise kohta.

# faili avamine lugemisrežiimis
fail = avatud ("fail1.txt "," r ")
# failist andmete lugemiseks funktsioon read ()
# ridade salvestamine muutujasse
andmed = fail.loe ()
# andmete printimine
print ("See on funktsiooni read () väljund: \ n")
print (andmed)
# faili asukoha alustamiseks funktsiooni seek () abil
faili.otsima (0)
# failist andmete lugemiseks funktsioon readline ()
# ridade salvestamine muutujasse
andmed = fail.readline ()
# andmete printimine
print ("See on readline () funktsiooni väljund: \ n")
print (andmed)
# faili positsiooni alustamiseks funktsiooni seek () abil
faili.otsima (0)
# failist andmete lugemiseks funktsioon readlines ()
# ridade salvestamine muutujasse
andmed = fail.readlines ()
# andmete printimine
print ("See on readlines () funktsiooni väljund: \ n")
print (andmed)
#faili sulgemine
faili.Sulge()

Väljund

Järeldus

Sageli on vaja teavet või andmeid faili salvestada. Pythonis saate Pythoni sisseehitatud funktsioonide abil hõlpsalt faile luua, kirjutada ja lugeda. Kui soovite faile lugeda, kirjutada ja luua, pole vaja muid mooduleid oma programmi importida. Failide kasutamise ajal saate kasutada ka mitut sisseehitatud juurdepääsurežiimi. Selles artiklis oleme mõned lihtsad näited selgitanud, kuidas Pythonis faile lugeda ja kirjutada.

Kuidas kasutada GameConquerori petumootorit Linuxis
Artikkel sisaldab juhendit GameConquerori petumootori kasutamise kohta Linuxis. Paljud kasutajad, kes mängivad Windowsis mänge, kasutavad rakendust „C...
Parimad Linuxi mängukonsooli emulaatorid
Selles artiklis loetletakse Linuxi jaoks saadaval olev populaarne mängukonsooli emuleerimise tarkvara. Emuleerimine on tarkvara ühilduvuse kiht, mis j...
Parimad mängude jaoks mõeldud Linuxi distrod 2021. aastal
Linuxi operatsioonisüsteem on oma algsest, lihtsast, serveripõhisest välimusest kaugele jõudnud. See operatsioonisüsteem on viimastel aastatel tohutul...