Programmering

Sådan arbejder du med filer i Python

Sådan arbejder du med filer i Python

Python er et fantastisk programmeringssprog til de fleste opgaver, såsom webudvikling, AI, automatisering eller generel programmering. Arbejde med filer og mapper er vigtigt, fordi vi skal bruge dem til at automatisere opgaver eller gemme data og forskellige andre lignende opgaver.

For at arbejde med specialformatfiler som billedfiler, JSON-filer, PDF, CSV-filer eller databasefiler har python fantastiske moduler skrevet af fantastiske programmører for at gøre vores opgave let. Du kan tjekke vores trinvise vejledning til at arbejde med SQL-databasefiler ved hjælp af python, hvormed du kan lære SQLite, hvilket er en fantastisk måde at gemme og hente data fra pythonprogrammer på.

Før vi begynder, skal vi først have python installeret i systemet. Hvis du ikke har det installeret, kan du se vores guide til installation af python.

Arbejde med filer i Python

Filer er en vigtig del af vores daglige arbejde. Vi bruger PDF-filer, Excel-filer eller normale tekstfiler til mange opgaver. De selvstudier, du læser på dette websted, er i en HTML-fil, som din browser behandler. Som mange andre programmeringssprog understøtter Python også filhåndtering.

Åbning og lukning af filer

Vi kan nemt åbne en fil i python ved hjælp af den indbyggede åbne () funktion. Den åbne funktion accepterer mange argumenter, men det vigtigste krævede argument er stien til den fil, som vi vil åbne. Den åbne () funktion har en enkelt returnering, som er filobjektet.

file_obj = open ("filnavn.txt ")

Koden åbner filen med navnet “filnavn.txt, ”en tekstfil, der findes i samme mappe. Derefter gemmer det returfilobjektet i filen_obj-variablen.

Når vi har afsluttet al behandling med filen, skal vi huske, at filen lukkes. En fil lukkes, efter at programmet er afsluttet i mange tilfælde, men det er godt at lukke den ved hjælp af close () -funktionen, når vi ikke har brug for det. Hvis vi glemmer at lukke en fil, vil den simpelthen forbruge hukommelse, hvilket vil sænke programmet. Det betragtes som en dårlig praksis for større projekter.

For at lukke en åbnet fil skal vi bruge filens objektets close () -funktion.

# her åbner vi filens filnavn.txt file_obj = open ("filnavn.txt ") print (" Filen er åbnet med succes ... ") # Nu kan vi udføre behandling med filen # Efter behandling skal vi lukke filen file_obj.close () print ("Filen er lukket ...")

Vi åbnede en fil med navnet filnavn.txt i den samme mappe ved hjælp af funktionen open () og derefter lukkes den med funktionen close ().

Produktion:

åbne og lukke fil

Selvom funktionen close () er nyttig til at lukke en fil, er der en måde at lukke en fil til, dvs.e., ved at åbne filen ved hjælp af med erklæringen.

Eksempel:

med åben ("filnavn.txt ") som file_obj: # Her går filhandlingerne

Koden lukker automatisk filen, når vi kommer ud af med blok. Med-erklæringen lukker også filen, hvis der er nogen fejl, så det er bedre at bruge den med udsagnet, da vi nemt kan lukke filen og håndtere filfejlene ved hjælp af den.

Filåbningstilstande

Selvom funktionen open () kun kan bruges med et argument, er jeg.e., filstien kan vi også bruge et andet argument med navnet mode. Det betyder den tilstand, der bruges til at åbne filen.

For eksempel, hvis vi ønsker at åbne filen til kun læsning og ikke ønsker at redigere den, kan vi bruge 'r' -tilstanden som et argument for at åbne () -funktionen, hvilket betyder skrivebeskyttet tilstand. Dette er også standardtilstand for åben () -funktionen. For at skrive eller ændre en fil er vi nødt til at åbne filen med skrivetilstand ved hjælp af 'w' som argument.

Eksempel:

med åben ("filnavn.txt ", w"): # Her følger udsagnene #, der skal udføres på filen

Denne kode åbner filen i skrivetilstand, så du kan udføre skrivehandlinger på filen.

Der kan også være situationer, hvor vi vil åbne en fil i binær tilstand for at udføre nogle operationer på den. For at gøre det skal vi indstille 'rb' til læsning i binær tilstand og 'wb' til at skrive i binær tilstand.

Eksempel:

med åben ("filnavn.dat "," rb "): # Her følger udsagnene #, der skal udføres på den binære fil

Det åbner en datafil med navnet filnavn.dat i binær tilstand til kun læsning.

Indtil nu har vi lært, hvordan man åbner en fil og lukker en fil. Lad os nu se, hvordan vi kan læse data fra filen ved hjælp af Python.

Læsning af filer ved hjælp af Python

Der er mange måder, hvorpå vi kan læse data fra en åbnet fil i python, men den mest almindelige måde er at bruge funktionerne read (), readline () og readlines ().

Funktionen læse ()

Det accepterer antallet af bytes, der skal læses fra filen som et argument, og læser den mængde bytes, der er fra filen.

Hvis vi ikke giver noget argument eller bruger Ingen eller -1 som et argument til funktionen read (), læses hele filen i skrivebeskyttet tilstand.

Eksempel:

med åben ("filnavn.txt ") som file_obj: # ved hjælp af funktionen read () til at læse byte # fra filobjektets ord = file_obj.læse () udskrive (ord)

Produktion:

læser data fra filen ved hjælp af funktionen read ()

Du skal muligvis oprette filfilens filnavn.txt med demo-indhold eller angiv andre filer i argumentet om open () -funktionen, før programmet køres; Ellers kaster python FileNotFoundError som vist nedenfor.

Sporing (seneste opkald sidst): Fil "fil.py ", linje 1, ind med åben (" filnavn.txt ") som file_obj: FileNotFoundError: [Errno 2] Ingen sådan fil eller katalog: 'filnavn.txt '

Læs () -funktionen er en fantastisk måde at læse bytes fra filen på, men der er flere måder at læse data fra en fil på. Der er primært to andre metoder til at læse data fra en fil. De er readline () og readlines () -metoderne.

Funktionen readline ()

Funktionen readline () bruges til at læse en linje ad gangen. Hver gang vi kører den, får vi den næste linje i filen.

Eksempel:

med åben ("filnavn.txt "," r ") som fileobj: udskriv (fileobj.readline ()) # udskriv udskrivning af første linje (fileobj.readline ()) # udskriv den anden linje

Output: Vi får den første og anden linje i filen udskrevet.

læser data ved hjælp af readline () -funktionen

Vi kan også videregive antallet af tegn, der skal læses fra en linje som et argument, til funktionen readline ().

Eksempel:

med åben ("filnavn.txt "," r ") som fileobj: udskriv (fileobj.readline (15)) # udskriv de første 15 byte

Produktion:

angiver antallet af tegn i readine () -funktionen

Funktionen readlines ()

Funktionen readlines () bruges til at læse alle linjer i en fil. Denne funktion returnerer en liste med alle linjerne i filen. Hvis vi ikke har brug for at køre alle linjerne, kan vi også angive antallet af linjer, vi har brug for som et argument.

Eksempel:

med åben ("filnavn.txt "," r ") som fileobj: udskriv (fileobj.readlines ()) # returner en liste med alle linjerne

Produktion:

readlines () funktion

Skrivning af filer ved hjælp af Python

For at skrive data i en fil ved hjælp af python skal vi bruge skrivemetoden () til filobjektet. Skrivfunktionen accepterer dataene som et argument, som vi vil skrive i filen.

Eksempel:

line = "Dette er en ny linje \ n" med åben ("filnavn.txt "," w ") som fileobj: udskriv (fileobj.skriv (linje))

Når du kører koden, skal alle filnavn.txt data erstattes af strengen "Dette er en ny linje". Hvis du ikke har filnavn.txt fil til stede tidligere, så opretter den en.

Tilføjelse af filer

Mens du skriver en fil, som vi gjorde i den forrige kode, bemærker du muligvis, at de nye data erstatter alle de tidligere data, der er til stede i filen. Nogle gange er vi kun forpligtet til at tilføje de nye data i stedet for at omskrive dataene. Vi er nødt til at åbne filen ved hjælp af “a” -tilstanden og derefter bruge skrivefunktionen () til at skrive dataene.

Eksempel:

line = "\ nDette er en ny linje" med åben ("filnavn.txt "," a ") som fileobj: udskriv (fileobj.skriv (linje))

Vi får en ny linje skrevet i filens filnavn.txt uden at erstatte de tidligere linjer ved kørsel af koden.

Omdøbning og sletning af filer

For at omdøbe en fil skal vi bruge omdøbningsfunktionen () til os-modulet. Omdøbningsfunktionen accepterer to vigtige argumenter, det første argument er stien til den fil, vi vil omdøbe, og det andet argument er det nye navn på den originale fil.

Eksempel:

importer os OS.omdøb ("fil1.txt, fil2.txt ")

Koden omdøber filen fil1.txt med navnet fil2.txt.

For at slette en fil ved hjælp af python skal vi bruge fjerne() funktion af os modul.

Eksempel:

importer os OS.fjern ("prøve.txt ")

Dette sletter filen prøve.txt findes i det aktuelle bibliotek. Du kan også angive filens sti, hvis den findes i andre mapper. Hvis filen ikke findes i den givne sti, får vi en FileNotFoundError. Brug den undtagelseshåndteringsmetode, der er beskrevet i det forrige underemne, til at håndtere fejl.

Konklusion

I denne vejledning har vi lært alt, hvad der er nødvendigt for at arbejde med filer i python, såsom at oprette filer, læse data fra filer, skrive data til filer, fjerne og omdøbe filer osv.

Du kan også henvise til vores trinvise vejledning til at arbejde med SQLite-database på python, hvor du kan lære alt hvad du behøver at vide, mens du arbejder med SQLite-databaser i python.

Vulkan til Linux-brugere
Med hver nye generation af grafikkort ser vi spiludviklere skubbe grænserne for grafisk troskab og komme et skridt tættere på fotorealisme. Men på tro...
OpenTTD vs Simutrans
Oprettelse af din egen transportsimulering kan være sjovt, afslappende og ekstremt lokkende. Derfor skal du sørge for at prøve så mange spil som mulig...
OpenTTD Tutorial
OpenTTD er et af de mest populære forretningssimuleringsspil derude. I dette spil skal du oprette en vidunderlig transportvirksomhed. Du starter dog i...