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:
- Avage fail
- Faili lugemine / kirjutamine
- Sule fail
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:
- Mõned Pythoni erinevatest failirežiimidest
- Kuidas faili avada
- Kuidas faili luua
- Kuidas andmeid faili kirjutada
- Kuidas faili lugeda
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:
- kirjutama ()
- 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žiimisfail = 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žiimisfail = 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žiimisfail = 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žiimisfail = 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:
- loe ()
- readline ()
- 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žiimisfail = 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.