Faili tiek izmantoti datu glabāšanai un kārtošanai diskā. Mēs bieži izmantojam failus, ja mums pastāvīgi jāuzglabā dati cietajā diskā. Piemēram, teiksim, ka mēs veidojam programmatūras sistēmu, kas uztur studentu ierakstus. Tagad mums ir pastāvīgi jāsaglabā studentu dati turpmākai izmantošanai. Šim nolūkam mēs varam izmantot failus datu glabāšanai, un vēlāk mēs varam atvērt šos failus un piekļūt saglabātajiem datiem jebkurā laikā.
Failu lasīšana un rakstīšana ir ļoti izplatītas Python funkcijas. Python ir viegli izveidot, lasīt un rediģēt failus. Python ir iebūvētas funkcijas failu lasīšanai un rakstīšanai. Jūs varat atvērt, rakstīt un lasīt failus, izmantojot iebūvētās Python funkcijas. Failu darbības tiek veiktas šādā secībā:
- Atveriet failu
- Lasīt/rakstīt failu
- Aizvērt failu
Izmantojot Python, jūs varat izveidot teksta failus un bināros failus. Teksta failos dati tiek glabāti rakstzīmju veidā, un katra rinda beidzas ar jaunas rindas rakstzīmi (“ n”). Bināros failos dati tiek glabāti baitu veidā (1 un 0).
Šajā rakstā jūs uzzināsit:
- Daži no dažādiem failu režīmiem Python
- Kā atvērt failu
- Kā izveidot failu
- Kā ierakstīt datus failā
- Kā lasīt failu
Dažādi failu režīmi Python
Python režīmi apraksta ar failu veicamo darbību veidu. Atverot failu, jums jānorāda režīms. Katram failam ir faila rokturis. Failu rokturis darbojas kā kursors, kas norāda, kur rakstīt un lasīt datus. Tas ir atrašanās vietas rādītāja veids. Tālāk ir iekļauti daži no dažādiem piekļuves failu režīmiem Python:
Režīms | Apraksts |
r | Atver failu lasīšanas režīmā. Šis režīms ir atlasīts pēc noklusējuma, ja, atverot failu programmā Python, nenosakāt nevienu režīmu. |
iekšā | Raksta failu. Šis režīms izveido failu, ja fails jau nepastāv, un pārraksta failā esošos datus. |
r+ | Izmanto, lai lasītu un rakstītu failu. Tas parāda kļūdu, ja fails nepastāv. |
uz | Atver failu pievienošanas režīmā. Faila rokturis atrodas faila beigās. Šis režīms nepārraksta esošos datus, bet sāk rakstīt datus faila beigās. Ja fails neeksistē, tiek izveidots jauns fails. |
a + | Atver failu lasīšanai un rakstīšanai. Tas atver failu rakstīšanas pievienošanas režīmā. Dati tiek ievietoti faila beigās. Ja fails neeksistē, tiek izveidots jauns fails. |
t | Atver failu teksta režīmā. |
Kā atvērt failu
Lai atvērtu failu programmā Python, izmantojiet iebūvēto atvērts () funkciju. Funkcija open () ievada divus argumentus, t.i., faila nosaukumu un darbības režīmu. Šī funkcija atgriež faila objektu kā izvadi. Lai izmantotu funkciju open (), nav nepieciešams importēt nevienu moduli. Funkcijas open () sintakse ir šāda:
file_object= atvērts(faila nosaukums,režīmu)Šeit “faila_nosaukums” apzīmē faktiskā teksta faila nosaukumu, bet “režīms” apzīmē piekļuvi failam vai faila darbības režīmu. Ja faila nosaukumā ir īpašas rakstzīmes, varat arī ievietot r pirms faila_nosaukuma. R ir novietots šādi:
=file_object= atvērts(rfile_name,režīmu)
Piemēram, faila nosaukums varētu būt: F: newfolder myfile.txt
Kā izveidot failu
Funkciju open () var izmantot, lai izveidotu failus Python. Lai izveidotu failu, izmantojiet pievienošanas režīmu (a) atvērtajā () funkcijā. Izveidojiet failu, izmantojot tālāk norādīto kodu:
failu = atvērts('sample.txt','uz')Šeit tiek izveidots jauns faila objekts. Faila objekts ir nosaukts kā fails. Jaunizveidotā teksta faila nosaukums ir sample.txt. Teksta fails tiek atvērts pievienošanas režīmā. Tas izveidos jaunu failu, ja fails jau neeksistē. Pēc faila izveides fails ir jāaizver šādā veidā:
failu.aizvērt()Faila aizvēršanai tiek izmantota iebūvētā aizvēršanas () funkcija.
Kā ierakstīt datus failā
Python ir divas funkcijas, ko izmanto datu ierakstīšanai failā:
- rakstīt ()
- rakstzīmes ()
Funkciju write () izmanto, lai failā ierakstītu vienas rindas vai vienas virknes datus, savukārt funkciju writelines () izmanto, lai teksta failā ierakstītu vairākas datu rindas. Apskatīsim dažus datu ierakstīšanas failā piemērus.
Funkcijas write () izmantošana
Šajā piemērā mēs izmantojam funkciju write (), lai ierakstītu datus failā. Fails tiek atvērts rakstīšanas režīmā. n tiek ievietots, lai norādītu rindas beigas.
# jauna faila objekta izveidošana un faila atvēršana rakstīšanas režīmāfailu=atvērts('sample.txt','in')
# vienas rindas ierakstīšana failā
failu.rakstīt('Laipni lūdzam linuxhint n')
# citas vienas rindiņas rakstīšana failā
failu.rakstīt('Laipni lūdzam atpakaļ')
#faila aizvēršana
failu.aizvērt()
Izeja
Līnijas ir ierakstītas teksta failos.
Ja mēs atveram failu rakstīšanas režīmā un lūdzam funkciju write () ierakstīt failā vairāk rindiņu, tas pārrakstīs iepriekšējos datus un teksta failā tiks pievienoti jauni dati.
# jauna faila objekta izveidošana un faila atvēršana rakstīšanas režīmāfailu=atvērts('sample.txt','in')
# vienas rindas ierakstīšana failā
failu.rakstīt('Sveiki visiem n')
# citas vienas rindiņas rakstīšana failā
failu.rakstīt('Šī ir aizstātā virkne')
#faila aizvēršana
failu.aizvērt()
Izeja
Rezultātā redzams, ka iepriekšējie dati tiek aizstāti un teksta failā tiek pievienoti jauni dati.
Ja mēs vēlamies saglabāt failā gan iepriekšējos, gan jaunos datus, mēs varam atvērt failu pievienošanas režīmā, piemēram:
# jauna faila objekta izveidošana un faila atvēršana pievienošanas režīmāfailu=atvērts('sample.txt','uz')
# vienas rindas ierakstīšana failā
failu.rakstīt('Sveiki visiem n')
# citas vienas rindiņas rakstīšana failā
failu.rakstīt('Šī ir aizstātā virkne n')
# rakstot failā vēl vienu jaunu rindiņu
failu.rakstīt('Šī ir tikko pievienotā virkņu virkne n')
#faila aizvēršana
failu.aizvērt()
Izeja
Funkcijas writelines () izmantošana
Funkciju writelines () izmanto, lai tekstā vienlaikus ierakstītu vairākas rindas, kā norādīts tālāk.
# jauna faila objekta izveidošana un faila atvēršana rakstīšanas režīmāfailu=atvērts('file1.txt','in')
# vairāku virkņu datu glabāšana mainīgajā
lpp = ['Sveiki visiem n','Laipni lūdzam linuxhint n','mēs izmantojam rakstzīmju funkciju n']
# izmantojot rakstlīniju funkcijas datu ierakstīšanai failā
failu.rakstlīnijas(lpp)
#faila aizvēršana
failu.aizvērt()
Izeja
Kā lasīt failu
Lai lasītu failu programmā Python, vispirms atveriet failu lasīšanas režīmā. Python ir trīs iebūvētas funkcijas faila lasīšanai. Tajos ietilpst:
- lasīt ()
- readline ()
- readlines ()
lasīt (): Izmanto, lai nolasītu datus no faila; atgriež visus datus virknes veidā.
readline (): Nolasa datu rindu no faila; atgriež tikai pirmo rindu.
readlines (): Nolasa visas esošās rindas no faila; atgriež to saraksta veidā.
Funkcija seek () tiek izmantota, lai mainītu faila roktura pozīciju. Lasot datus failā, faila rokturis novieto sevi faila beigās. Tādējādi faila rokturis ir kā kursors, un meklēt () funkcija ir līdzeklis kursora pārvietošanai.
Apskatīsim datu nolasīšanas piemēru no faila.
# faila atvēršana lasīšanas režīmāfailu=atvērts('file1.txt','r')
# izmantojot funkciju read (), lai nolasītu datus no faila
# līniju saglabāšana mainīgā
dati=failu.lasīt()
# datu drukāšana
drukāt('Šī ir lasīšanas () funkcijas izvade: n')
drukāt(dati)
# izmantojot funkciju Seek (), lai sāktu faila pozīciju
failu.meklēt(0)
# izmantojot funkciju readline (), lai nolasītu datus no faila
# līniju saglabāšana mainīgā
dati=failu.lasīšanas līnija()
# datu drukāšana
drukāt('Šī ir readline () funkcijas izvade: n')
drukāt(dati)
# izmantojot funkciju Seek (), lai sāktu faila pozīciju
failu.meklēt(0)
# izmantojot funkciju readlines (), lai nolasītu datus no faila
# līniju saglabāšana mainīgā
dati=failu.lasīšanas līnijas()
# datu drukāšana
drukāt('Šī ir readlines () funkcijas izvade: n')
drukāt(dati)
#faila aizvēršana
failu.aizvērt()
Izeja
Secinājums
Bieži vien failā ir jāglabā informācija vai dati. Izmantojot Python, varat viegli izveidot, rakstīt un lasīt failus, izmantojot Python iebūvētās funkcijas. Ja vēlaties lasīt, rakstīt un izveidot failus, programmā nav jāimportē citi moduļi. Failu lietošanas laikā varat izmantot arī vairākus iebūvētus piekļuves režīmus. Šajā rakstā mēs esam izskaidrojuši, kā lasīt un rakstīt failus Python, izmantojot dažus vienkāršus piemērus.