Programmēšana

Kā strādāt ar failiem Python

Kā strādāt ar failiem Python

Python ir pārsteidzoša programmēšanas valoda lielākajai daļai uzdevumu, piemēram, tīmekļa izstrādei, AI, automatizācijai vai vispārējai programmēšanai. Darbs ar failiem un mapēm ir svarīgs, jo mums tie ir jāizmanto, lai automatizētu uzdevumus vai saglabātu datus un dažādus citus līdzīgus uzdevumus.

Lai strādātu ar īpaša formāta failiem, piemēram, attēlu failiem, JSON failiem, PDF, CSV failiem vai datu bāzes failiem, pitonam ir pārsteidzoši moduļi, kurus uzrakstījuši lieliski programmētāji, lai atvieglotu mūsu uzdevumu. Jūs varat pārbaudīt mūsu soli pa solim apmācību par darbu ar SQL datu bāzes failiem, izmantojot pitonu, ar kura palīdzību jūs varat iemācīties SQLite, kas ir lielisks veids, kā uzglabāt un izgūt python programmu datus.

Pirms sākam, vispirms sistēmā ir jāinstalē pitons. Ja jums tas vēl nav instalēts, varat skatīt mūsu ceļvedi par pitona instalēšanu.

Darbs ar failiem Python

Faili ir svarīga mūsu ikdienas sastāvdaļa. Daudziem uzdevumiem mēs izmantojam PDF failus, Excel failus vai parastos teksta failus. Šajā vietnē lasītās apmācības ir HTML failā, ko jūsu pārlūkprogramma apstrādā. Tāpat kā daudzas citas programmēšanas valodas, arī Python atbalsta failu apstrādi.

Failu atvēršana un aizvēršana

Mēs varam viegli atvērt failu pitonā, izmantojot iebūvēto open () funkciju. Open funkcija pieņem daudzus argumentus, bet galvenais nepieciešamais arguments ir ceļš uz failu, kuru mēs vēlamies atvērt. Funkcijai open () ir viena atgriešanās, kas ir faila objekts.

file_obj = open ("faila nosaukums.txt ")

Kods atvērs failu ar nosaukumu “faila nosaukums.txt ”, teksta fails atrodas tajā pašā mapē. Tad tas saglabās atgriešanās fileobject mainīgajā failā_obj.

Kad visa apstrāde ir pabeigta ar failu, mums jāatceras faila aizvēršana. Daudzos gadījumos fails tiek aizvērts pēc programmas pārtraukšanas, taču ir labi to aizvērt, izmantojot aizvēršanas () funkciju, kad mums tas nav vajadzīgs. Ja mēs aizmirsīsim aizvērt failu, tas vienkārši patērēs atmiņu, kas palēninās programmu. To uzskata par sliktu praksi lielākiem projektiem.

Lai aizvērtu atvērto failu, mums jāizmanto faila objekta aizvēršanas () funkcija.

# šeit mēs atvērsim faila faila nosaukumu.txt file_obj = open ("faila nosaukums.txt ") print (" Fails ir veiksmīgi atvērts ... ") # Tagad mēs varam veikt apstrādi ar failu # Pēc apstrādes mums jāaizver fails file_obj.aizvērt () drukāt ("Fails ir aizvērts ...")

Mēs atvērām failu ar nosaukumu faila nosaukums.txt tajā pašā mapē, izmantojot funkciju open (), un pēc tam to aizvēra, izmantojot aizvēršanas () funkciju.

Izeja:

atvēršanas un aizvēršanas fails

Lai gan funkcija close () ir noderīga, aizverot failu, ir vēl viens veids, kā aizvērt failu, t.e., atverot failu, izmantojot ar paziņojums.

Piemērs:

ar atvērtu ("faila nosaukums.txt ") as file_obj: # Šeit notiek failu darbības

Kods automātiski aizvērs failu, tiklīdz būsim izkļuvuši no ar bloķēt. Ar paziņojums ar arī aizver failu, ja būs kāda kļūda, tāpēc labāk ir izmantot ar paziņojumu, jo mēs varam aizvērt failu un viegli rīkoties ar faila kļūdām.

Failu atvēršanas režīmi

Lai gan funkciju open () var izmantot tikai ar vienu argumentu, t.e., faila ceļu, mēs varam izmantot arī citu argumentu ar nosaukumu režīmā. Tas apzīmē režīmu, kas tiek izmantots faila atvēršanai.

Piemēram, ja mēs vēlamies atvērt failu tikai lasīšanai un nevēlamies to rediģēt, mēs varam izmantot režīmu “r” kā argumentu, lai atvērtu funkciju (), kas nozīmē tikai lasīšanas režīmu. Tas ir arī noklusējuma režīms funkcijai open (). Lai rakstītu vai modificētu failu, mums jāatver fails ar rakstīšanas režīmu, kā argumentu izmantojot “w”.

Piemērs:

ar atvērtu ("faila nosaukums.txt ", w"): # Šeit ir teikumi #, kas jāveic failā

Šis kods atvērs failu rakstīšanas režīmā, lai jūs varētu veikt faila rakstīšanas darbības.

Var būt arī situācijas, kad mēs vēlamies atvērt failu binārā režīmā, lai ar to veiktu kādu darbību. Lai to izdarītu, mums ir jārežimē “rb” lasīšanai binārā režīmā un “wb” rakstīšanai binārā režīmā.

Piemērs:

ar atvērtu ("faila nosaukums.dat "," rb "): # Šeit ir teikumi #, kas jāveic binārā failā

Tas atvērs datu failu ar nosaukumu faila nosaukums.dat binārā režīmā tikai lasīšanai.

Līdz šim mēs esam iemācījušies atvērt failu un aizvērt failu. Tagad ļaujiet mums redzēt, kā mēs varam nolasīt datus no faila, izmantojot Python.

Failu lasīšana, izmantojot Python

Ir daudz veidu, kā mēs varam nolasīt datus no atvērta faila pitonā, taču visbiežāk tas tiek izmantots, izmantojot funkcijas read (), readline () un readlines ().

Lasīšanas () funkcija

Tā pieņem argumentu no faila nolasāmo baitu skaitu un nolasa šo baitu daudzumu no faila.

Ja mēs nesniedzam nevienu argumentu vai izmantojam None vai -1 kā argumentu funkcijai read (), viss fails tiks lasīts tikai lasīšanas režīmā.

Piemērs:

ar atvērtu ("faila nosaukums.txt ") kā file_obj: # izmantojot funkciju read (), lai lasītu baitus # no faila objekta vārdiem = file_obj.lasīt () drukāt (vārdi)

Izeja:

lasot datus no faila, izmantojot funkciju read ()

Iespējams, jums būs jāizveido faila nosaukuma paraugs.txt ar demonstrācijas saturu vai pirms programmas palaišanas norādiet citus failus argumentā open (); citādi pitons izmetīs FileNotFoundError, kā parādīts zemāk.

Traceback (pēdējais zvans pēdējais): fails "fails".py ", 1. rindiņa, ar atvērtu (" faila nosaukums.txt ") kā file_obj: FileNotFoundError: [Kļūda 2] Nav šāda faila vai direktorija: 'faila nosaukums.txt '

Funkcija read () ir pārsteidzošs veids, kā nolasīt baitus no faila, taču ir vairāki veidi, kā nolasīt datus no faila. Datu lasīšanai no faila galvenokārt ir divas citas metodes. Tās ir metodes readline () un readlines ().

Funkcija readline ()

Funkcija readline () tiek izmantota rindas lasīšanai vienlaikus. Katru reizi, kad to palaižam, mēs iegūsim nākamo faila rindu.

Piemērs:

ar atvērtu ("faila nosaukums.txt "," r ") kā fileobj: print (fileobj.readline ()) # izdrukāt pirmās rindas izdruku (fileobj.readline ()) # izdrukājiet otro rindu

Izeja: mēs izdrukāsim faila pirmo un otro rindu.

datu lasīšana, izmantojot funkciju readline ()

Mēs varam arī nodot rakstzīmju skaitu, kas jāizlasa no rindas kā argumentu funkcijai readline ().

Piemērs:

ar atvērtu ("faila nosaukums.txt "," r ") kā fileobj: print (fileobj.readline (15)) # izdrukājiet pirmos 15 baitus

Izeja:

norādot rakstzīmju skaitu readine () funkcijā

Funkcija readlines ()

Funkcija readlines () tiek izmantota, lai nolasītu visas faila rindas. Šī funkcija atgriezīs visu failā esošo rindu sarakstu. Ja mums nav nepieciešams palaist visas rindas, tad kā argumentu mēs varam norādīt arī vajadzīgo rindu skaitu.

Piemērs:

ar atvērtu ("faila nosaukums.txt "," r ") kā fileobj: print (fileobj.readlines ()) # atgriež visu rindu sarakstu

Izeja:

readlines () funkcija

Failu rakstīšana, izmantojot Python

Lai ierakstītu datus failā, izmantojot pitonu, mums jāizmanto faila objekta write () metode. Rakstīšanas funkcija pieņem datus kā argumentu, kuru mēs vēlamies ierakstīt failā.

Piemērs:

line = "Šī ir jauna rinda \ n" ar atvērtu ("faila nosaukums.txt "," w ") kā fileobj: print (fileobj.rakstīt (rinda))

Palaižot kodu, visi faila nosaukums.txt dati tiks aizstāti ar virkni “Šī ir jauna rinda”. Ja jums nav faila nosaukums.txt failu, kas atrodas iepriekš, tad tas to izveidos.

Failu pievienošana

Rakstot failu, kā mēs to darījām iepriekšējā kodā, jūs varat pamanīt, ka jaunie dati aizstāj visus iepriekšējos failā esošos datus. Dažreiz mums ir tikai jāpievieno jaunie dati, nevis jāpārraksta dati. Mums ir jāatver fails, izmantojot režīmu “a”, un pēc tam datu rakstīšanai jāizmanto funkcija write ().

Piemērs:

line = "\ nŠī ir jauna rinda" ar atvērtu ("faila nosaukums.txt "," a ") kā fileobj: print (fileobj.rakstīt (rinda))

Mums faila faila nosaukumā būs ierakstīta jauna rinda.txt, neaizstājot iepriekšējās rindas, palaižot kodu.

Failu pārdēvēšana un dzēšana

Lai pārdēvētu failu, mums jāizmanto os moduļa funkcija rename (). Funkcija pārdēvēt pieņem divus svarīgus argumentus, pirmais arguments ir ceļš uz failu, kuru mēs vēlamies pārdēvēt, un otrs arguments ir sākotnējā faila jaunais nosaukums.

Piemērs:

importēt os os.pārdēvēt ("fails1.txt, fails2.txt ")

Kods pārdēvēs failu fails1.txt ar vārdu fails2.txt.

Lai izdzēstu failu, izmantojot pitonu, mums jāizmanto noņemt () funkcija os modulis.

Piemērs:

importēt os os.noņemt ("paraugs.txt ")

Tas izdzēsīs failu paraugs.txt atrodas pašreizējā direktorijā. Varat arī norādīt faila ceļu, ja tas atrodas citos direktorijos. Ja fails norādītajā ceļā nepastāv, mēs iegūsim FileNotFoundError. Lai novērstu kļūdas, izmantojiet iepriekšējā apakštēmā aprakstīto izņēmumu apstrādes metodi.

Secinājums

Šajā apmācībā mēs esam iemācījušies visu nepieciešamo darbam ar failiem pitonā, piemēram, failu izveidi, datu lasīšanu no failiem, datu rakstīšanu failos, failu noņemšanu un pārdēvēšanu utt.

Varat arī atsaukties uz mūsu soli pa solim darbam ar SQLite datu bāzi pitonā, kur jūs varat uzzināt visu, kas jums jāzina, strādājot ar SQLite datu bāzēm pitonā.

Vidējā peles poga nedarbojas sistēmā Windows 10
The peles vidējā poga palīdz jums ritināt garas tīmekļa lapas un ekrānus ar lielu datu daudzumu. Ja tas apstājas, jūs galu galā izmantosiet tastatūru,...
Kā nomainīt peles kreiso un labo pogu operētājsistēmā Windows 10
Tas ir diezgan normāli, ka visas datora peles ierīces ir ergonomiski izstrādātas lietotājiem ar labo roku. Bet ir pieejamas peles ierīces, kas ir īpaš...
Atdariniet peles klikšķus, virzot kursoru, izmantojot operētājsistēmā Windows 10 bezklikšķu peli
Peles vai tastatūras lietošana nepareizā pozā, ja to lieto pārmērīgi daudz, var izraisīt daudz veselības problēmu, tostarp spriedzi, karpālā kanāla si...