logo

Läslinjer i Python

  • Readlines ( ) är en funktion som används i Python för att läsa en viss fil rad för rad på en gång.
  • Det är mycket användbart för att minska tidskomplexitet medan du läser en fil med brute force-metoden och använder loopar och olika iterationer.
  • Det är en kod på en rad och enkel funktion, som är mycket bättre än att använda många loopar för att bara läsa en fil.
  • I C-programmering är det en ganska tuff uppgift att läsa en fil, men den är väldigt lätt att implementera tack vare denna readlines ( ) funktion i Python.
  • readlines ( )-funktionen läser endast en hel rad från den givna filen; efter läsning returnerar den hela raden som innehåller alla element i form av en lista.
  • Om vi ​​vill öppna filen i normalt läsläge, returnerar funktionen readline ( ) oss strängen.
  • Om vi ​​vill öppna filen i binärt läge kommer readline ( ) funktion att returnera ett binärt objekt.
  • Det är också mycket fördelaktigt att lägga till en ny rad ( ' ' ) i slutet av raden.
  • Denna läslinjefunktion ( ) är mest lämplig för små filer, som innehåller färre data för att enkelt kunna läsa hela filen på kortare tid.
  • Den läser först filens innehåll till ett minne på en gång och separerar dem sedan i olika rader. Med hjälp av remsa ( )-funktionen kan vi iterera över hela listan, som har genererats av funktionen readline ( ), och genom att använda remsa ( )-funktionen kan vi strippa nyradens ' '-tecknet.

Python fil koncept

Python programmeringsspråk har olika inbyggda funktioner för skriva, skapa, och läsa filer. Två typer av filer hanteras i Python, vilket är vanliga textfiler, och den andra är binära filer huvudsakligen skrivna på binärt språk som är 0:or och 1:or.

    Textfiler:Dessa filer innehåller data i form av text, som avslutas med ett specialtecken som kallas EOL ( end of a line ), det nya radtecknet ( ' ' ) i Python som standard.Binära filer:Dessa typer av filer innehåller data i form av binära sekvenser, bestående av huvudsakligen 0:or och 1:or.

Vissa grundläggande steg som ska utföras i en fil:

Öppna en fil: Att öppna en fil görs med funktionen öppna ( ); när vi använder den här funktionen måste vi skicka filnamnet och åtkomstläget som ett argument.

Här är filåtkomstlägena som följer:

    Skrivskyddad ( r ):Den används för att läsa data från filen. Det positionerar början av filen. Om filen som nämns inte finns, kommer den att generera ett in-/utmatningsfel. Skrivskyddat är standardläget för att öppna filen; När vi använder det här läget kan vi inte redigera filens data eller inte skriva in dem i filen.Skriv endast ( ' w ' ):Den används för att skriva in data i filen, placera början av filen. Om filen som nämns inte finns, kommer den att generera ett in-/utmatningsfel. När vi använder det här läget kan vi inte läsa data från filen.Läs och skriv ( ' r+ ' ):Detta läge används för att skriva och läsa data från filen. Om vi ​​jämför det med föregående läge kan vi urskilja att vi inte kan skriva in i filen i skrivskyddat läge, men vi kan läsa och skriva in i filen i detta läge.

Till exempel, om vi har en fil som heter hello.txt och vi vill öppna den i skrivläge, kan vi använda den som:

uppgiftshanteraren för linux

Fil1 = öppen ( ' hello.txt ' , ' w ' )

Stänga en fil: Stäng-funktionen används för att frigöra det minnesutrymme som filen kräver; den här metoden är när det inte längre finns behov av filen eller om vi vill stänga hela filen och vill öppna filen i ett annat läge. Det utförs genom att använda funktionen close ( ), och i denna funktion behöver vi inte skicka något argument; denna funktion kan nås med filnamnet och tillhandahålls av dot close-funktionen.

vad är dator

Till exempel, om vi har en fil som heter hello.txt och vi vill öppna den i skrivläge, kan vi använda den som:

Fil1 = öppen ( ' hello.txt ' , ' w ' )
Fil1.stäng ( )

Skriva i en fil: Som namnet antyder kan vi enkelt förutsäga vad vi måste skriva i en fil med den här metoden. Det finns två sätt att skriva i en fil:

    Skriv ( ):I den här funktionen måste vi skicka ett enda argument, strängen vi vill infoga i filen.
    Till exempel, om vi har en fil som heter hello.txt och vi vill öppna den i skrivläge, kan vi använda den som:
    Fil1 = öppen ( ' hello.txt ' , ' w ' )
    File1.write ( str )
    Här är str strängen som vi vill infoga i filen.Skrivrader ( ):I den här funktionen måste vi skicka en array eller en lista som består av flera strängar. Den används för att infoga flera olika strängar i filen på en gång.
    Till exempel, om vi har en fil som heter hello.txt och vi vill öppna den i skrivläge, kan vi använda den som:
    Fil1 = öppen ( ' hello.txt ' , ' w ' )
    File1.writelines( S ) för S = [ str1 , str2 , str3 ]

Läser från en fil: På samma sätt, i detta, kan vi förutsäga att vad vi måste göra i detta; även i denna handledning kommer vi att läsa bland en av läsmetoderna i detalj. I den här metoden måste vi läsa data från den specifika filen. Det finns tre sätt att läsa data från filen:

stlc
    Läs ( ):Returnerar de lästa byten i form av en sträng. Läser n byte; om n inte anges, läser hela filen.Läsrad ( ):Läser en rad i filen och returnerar i form av en sträng. För specificerat n, läser högst n byte. funktionen readline ( ) läser inte mer än en rad åt gången; även om n överskrider, läser den bara en rad. Funktionen Readline ( ) läser en rad i filen och returnerar den i strängen. Det krävs ett heltalsvärde n som parameter för att läsa antalet tecken som läses åt gången. Metoden Readline ( ) är mycket effektiv för att läsa data från en mycket stor fil eftersom den hämtar data rad för rad och returnerar och skrivs ut på skärmen. Readline ( ) returnerar nästa rad i filen, som innehåller ett nyradstecken i slutet. Dessutom, om slutet av filen nås, kommer den att returnera en tom sträng.läsrader ( ):Läser alla rader och returnerar dem som ett strängelement i en lista. Läslinjer ( ) används för att läsa alla rader på en gång och sedan returnera dem som ett strängelement i en lista. Denna funktion kan användas för små filer, eftersom den läser hela filinnehållet till minnet och sedan delar upp det i separata rader. Med hjälp av remsa ()-funktionen kan vi iterera över listan och ta bort nyraden ' '-tecknet med funktionen remsa ( ).

Låt oss nu förstå konceptet med att läsa en fil i detalj med hjälp av ett exempel:

Exempel på att läsa en fil i Python:

Exempel 1:

Läsa en fil med funktionen readlines ( ).

 # Python program to implement the file concept using readlines ( ) for reading a file Fruits = ['Apple
', 'Orange
', 'Banana
'] # writing to file file = open('hello.txt', 'w') file.writelines(Fruits) # writelines is used to write the data into the file in # the form of a list, by inserting multiple values at the same time, # here, we are taking the hello.txt file file.close() # This instruction is used to close the file, i.e., hello.txt # Using readlines() file = open('hello.txt', 'r') Statements = file.readlines() count = 0 # Strips the newline character for line in Statements: # Using for loop to print the data of the file count = count + 1 print('Statement{}: {}'.format(count, line.strip())) 

Resultatet av exemplet ovan:

Läslinjer i Python

Exempel 2:

Läsa en fil med funktionen readline ( ).

 # Python program to implement the file concept using readline() for reading a file Fruit = [ 'Apple
' , 'Graphs
' , 'Mango
' , 'Orange
' , 'Kiwi
' ] # Writing to a file file1 = open('new.txt', 'w') file1.writelines((Fruit)) # writelines is used to write the data into the file in # the form of list, by inserting multiple values at a same time, # here we are taking new.txt file file1.close() # This instruction is used to close the file, i.e., hello.txt # Using readline() file1 = open('new.txt', 'r') count = 0 while True: count = count + 1 # Get next line from file s = file1.readline() # if line is empty # end of file is reached if not s: break print('Statement{}: {}'.format(count, s.strip())) file1.close() 

Resultatet av exemplet ovan:

Läslinjer i Python

Exempel 3:

Läsa en fil med simple for loop:

var är webbläsarinställningarna

I den här metoden använder vi inte funktionen readline ( ) och inte ens funktionen readlines ( ), eftersom vi redan har sett användningen av båda funktionerna i exemplen ovan; i den här metoden kommer vi att använda for-loopen för att skriva ut filens data. Vi kommer att iterera objekten i filen och läsa en fil rad för rad, även om vi använder några fördefinierade python-funktioner. Genom att använda dessa inbyggda Python-funktioner kan vi enkelt iterera över filobjektet implicit med hjälp av en for-loop, i kombination med att använda det itererbara objektet.

 ## Python program to implement the file concept using the simple for loop for reading a file Fruits = ['Apple 
', ' Orange 
', 'Banana 
', 'Mango
', 'Pineapple
' ] # Writing to file file2 = open('file2.txt', 'w') file2.writelines(Fruits) # writelines is used to write the data into the file in # the form of list, by inserting multiple values at a same time, # here we are taking file2.txt file file2.close() # This instruction is used to close the file, i.e., hello.txt # Opening file file2 = open('file2.txt', 'r') count = 0 # Using for loop print('Using for loop') for line in file2: count = count + 1 print('Statement{}: {}'.format(count, line.strip())) # Closing files file2.close() 

Resultatet av exemplet ovan:

Läslinjer i Python

Exempel 4:

Läsa en fil med ' with '-satsen:

charat java

Om vi ​​lägger märke till ovanstående 3 exempel, kan vi enkelt observera att varje gång filen måste vara öppen, då krävs att den är stängd; om vi inte stänger filen kommer det att skapa flera buggar i programmet eftersom många ändringar inte görs i filen eller träder i kraft tills vi inte stänger filen.

Så för att övervinna detta problem kommer vi att använda ' with '-satsen, som huvudsakligen används vid undantagshantering i Python, för att göra koden tydligare och mycket mer läsbar. Här, i det här exemplet, kan du enkelt observera att vi inte använder funktionen file.close ( ), om och om igen, för att förhindra filen, att använda det kan göras automatiskt med uttalandet. Därför minskar det rader kod och gör programmet snabbare att köra och implementera mer effektivt.

 # Python program to implement the file concept using with statement for reading a file Veges = ['Potato
', 'Onion
', 'Tomamto
'] # Writing to file with open('file3.txt', 'w') as file: file.writelines(Veges) # writelines is used to write the data into the file in # the form of list, by inserting multiple values at a same time, # here we are taking file3.txt file # using readlines() count = 0 print('Using readlines()') with open('file3.txt') as file: Statements = file.readlines() for line in Statements: count = count + 1 print('Satement{}: {}'.format(count, line.strip())) # Using readline() count = 0 print('
Using readline()') with open('file3.txt') as file: while True: count = count + 1 line = file.readline() if not line: break print('Statement{}: {}'.format(count, line.strip())) # Using for loop count = 0 print('
 Using for loop') with open('file3.txt') as file: for line in file: count = count + 1 print('Statements{}: {}'.format(count, line.strip())) 

Resultatet av exemplet ovan:

Läslinjer i Python