logo

Leesregels in Python

  • Readlines ( ) is een functie die in Python wordt gebruikt om een ​​bepaald bestand in één keer regel voor regel te lezen.
  • Het is zeer nuttig bij het verminderen van de tijd complexiteit tijdens het lezen van een bestand met behulp van de brute force-benadering en het gebruik van lussen en verschillende iteraties.
  • Het is een éénregelige code en een eenvoudige functie, die veel beter is dan het gebruik van veel lussen voor alleen het lezen van een bestand.
  • Bij C-programmeren is het lezen van een bestand een behoorlijk lastige taak, maar het is heel eenvoudig te implementeren dankzij deze readlines ( ) -functie in Python.
  • De functie readlines ( ) leest slechts één volledige regel uit het opgegeven bestand; na het lezen retourneert het de hele regel met alle elementen in de vorm van een lijst.
  • Als we het bestand in de normale leesmodus willen openen, retourneert de functie readline ( ) ons de string.
  • Als we het bestand in binaire modus willen openen, retourneert de functie readline ( ) u een binair object.
  • Het is ook erg handig om een ​​nieuwe regel (' ') aan het einde van de regel toe te voegen.
  • Deze leesregels ( )-functie is vooral geschikt voor kleine bestanden, die minder gegevens bevatten, zodat het hele bestand in minder tijd gemakkelijk kan worden gelezen.
  • Het leest eerst de inhoud van het bestand in één keer in een geheugen en verdeelt ze vervolgens in verschillende regels. Met behulp van de functie strip ( ) kunnen we de hele lijst herhalen, die is gegenereerd door de functie readline ( ), en door de functie strip ( ) te gebruiken, kunnen we het teken newline ' ' strippen.

Python-bestandsconcept

De programmeertaal Python heeft verschillende ingebouwde functies schrijven, creëren, En bestanden lezen. In Python worden twee soorten bestanden verwerkt, namelijk normale tekstbestanden, en de tweede zijn binaire bestanden die voornamelijk zijn geschreven in binaire taal, namelijk 0-en en 1-en.

    Tekstbestanden:Deze bestanden bevatten de gegevens in de vorm van tekst, die wordt afgesloten met een speciaal teken genaamd EOL ( end of a line ), standaard het nieuwe regelteken ( ' ' ) in Python.Binaire bestanden:Dit soort bestanden bevatten de gegevens in de vorm van binaire reeksen, die voornamelijk uit nullen en enen bestaan.

Bepaalde basisstappen die in een bestand moeten worden uitgevoerd:

Een bestand openen: Het openen van een bestand gebeurt met de functie open ( ); tijdens het gebruik van deze functie moeten we de bestandsnaam en de toegangsmodus als argument doorgeven.

Hier zijn de bestandstoegangsmodi als volgt:

    Alleen-lezen ( r ):Het wordt gebruikt om de gegevens uit het bestand te lezen. Het positioneert het begin van het bestand. Als het genoemde bestand niet aanwezig is, genereert het een invoer-/uitvoerfout. Alleen-lezen is de standaardmodus voor het openen van het bestand; tijdens het gebruik van deze modus kunnen we de gegevens van het bestand niet bewerken of in het bestand schrijven.Schrijf alleen (' w '):Het wordt gebruikt om de gegevens in het bestand te schrijven, waarbij het begin van het bestand wordt gepositioneerd. Als het genoemde bestand niet aanwezig is, genereert het een invoer-/uitvoerfout. Tijdens het gebruik van deze modus kunnen we de gegevens uit het bestand niet lezen.Lezen en schrijven (' r+ '):Deze modus wordt gebruikt voor het schrijven en lezen van de gegevens uit het bestand. Als we het vergelijken met de vorige modus, kunnen we onderscheiden dat we in de alleen-lezenmodus niet in het bestand kunnen schrijven, maar in deze modus kunnen we wel in het bestand lezen en schrijven.

Als we bijvoorbeeld een bestand hebben met de naam hello.txt en we willen het openen in de schrijfmodus, dan kunnen we het gebruiken als:

converteer tekenreeks naar enum

Bestand1 = open (' hallo.txt ', ' w ')

Een bestand sluiten: De functie Sluiten wordt gebruikt om de geheugenruimte vrij te maken die nodig is voor het bestand; deze methode is wanneer het bestand niet langer nodig is of als we het hele bestand willen sluiten en het bestand in een andere modus willen openen. Het wordt uitgevoerd met behulp van de functie close ( ), en binnen deze functie hoeven we geen enkel argument door te geven; deze functie is toegankelijk via de bestandsnaam en wordt geleverd door de dot close-functie.

recursie in Java

Als we bijvoorbeeld een bestand hebben met de naam hello.txt en we willen het openen in de schrijfmodus, dan kunnen we het gebruiken als:

Bestand1 = open (' hallo.txt ', ' w ')
Bestand1.sluiten ( )

Schrijven in een bestand: Zoals de naam al doet vermoeden, kunnen we met deze methode eenvoudig voorspellen wat we in een bestand moeten schrijven. Er zijn twee manieren om in een bestand te schrijven:

    Schrijven ( ):In deze functie moeten we één enkel argument doorgeven: de string die we in het bestand willen invoegen.
    Als we bijvoorbeeld een bestand hebben met de naam hello.txt en we willen het openen in de schrijfmodus, dan kunnen we het gebruiken als:
    Bestand1 = open (' hallo.txt ', ' w ')
    Bestand1.write (str)
    Hier is str de string die we in het bestand willen invoegen.Schrijflijnen ():In deze functie moeten we een array of een lijst doorgeven die uit meerdere strings bestaat. Het wordt gebruikt om meerdere verschillende tekenreeksen tegelijk in het bestand in te voegen.
    Als we bijvoorbeeld een bestand hebben met de naam hello.txt en we willen het openen in de schrijfmodus, dan kunnen we het gebruiken als:
    Bestand1 = open (' hallo.txt ', ' w ')
    File1.writelines( S) voor S = [ str1 , str2 , str3 ]

Lezen uit een bestand: Op dezelfde manier kunnen we hierin voorspellen wat we hierin moeten doen; zelfs in deze tutorial gaan we een van de leesmethoden in detail lezen. Bij deze methode moeten we de gegevens uit het specifieke bestand lezen. Er zijn drie manieren om de gegevens uit het bestand te lezen:

scannerscan java
    Lezen ( ):Retourneert de gelezen bytes in de vorm van een tekenreeks. Leest n bytes; als n niet is opgegeven, wordt het volledige bestand gelezen.Lees regel ( ):Leest een regel van het bestand en retourneert in de vorm van een string. Voor gespecificeerde n wordt maximaal n bytes gelezen. De functie readline ( ) leest niet meer dan één regel tegelijk; zelfs als n groter is, wordt er slechts één regel gelezen. De functie Readline ( ) leest een regel van het bestand en retourneert deze in de string. Er is een geheel getalwaarde n nodig als parameter om het aantal gelezen tekens per keer te lezen. De Readline ( )-methode is zeer efficiënt bij het lezen van de gegevens uit een zeer groot bestand, omdat de gegevens regel voor regel worden opgehaald en op het scherm worden afgedrukt. Readline ( ) retourneert de volgende regel van het bestand, die aan het einde een newline-teken bevat. Als het einde van het bestand wordt bereikt, zal het bovendien een lege string retourneren.leesregels ():Leest alle regels en retourneert ze als een stringelement in een lijst. Readlines ( ) wordt gebruikt om alle regels in één keer te lezen en ze vervolgens als stringelement in een lijst terug te geven. Deze functie kan worden gebruikt voor kleine bestanden, omdat de volledige bestandsinhoud in het geheugen wordt gelezen en deze vervolgens in afzonderlijke regels wordt opgesplitst. Met behulp van de functie strip () kunnen we de lijst herhalen en het teken voor de nieuwe regel ' ' verwijderen met behulp van de functie strip ().

Laten we nu het concept van het lezen van een bestand in detail begrijpen met behulp van een voorbeeld:

Voorbeelden van het lezen van een bestand in Python:

Voorbeeld 1:

Een bestand lezen met de functie 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())) 

De uitvoer van het bovenstaande voorbeeld:

Leesregels in Python

Voorbeeld 2:

Een bestand lezen met de functie 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() 

De uitvoer van het bovenstaande voorbeeld:

Leesregels in Python

Voorbeeld 3:

Een bestand lezen met een eenvoudige for-lus:

nfa voorbeelden

Bij deze methode gebruiken we niet de functie readline ( ) en zelfs niet de functie readlines ( ), omdat we het gebruik van beide functies al in de bovenstaande voorbeelden hebben gezien; bij deze methode gebruiken we de for-lus om de gegevens van het bestand af te drukken. We zullen de objecten van het bestand herhalen en een bestand regel voor regel lezen, hoewel we enkele vooraf gedefinieerde ingebouwde functies van Python gebruiken. Met behulp van deze ingebouwde Python-functies kunnen we eenvoudig impliciet over het bestandsobject itereren met behulp van een for-lus, in combinatie met het gebruik van het itereerbare object.

 ## 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() 

De uitvoer van het bovenstaande voorbeeld:

Leesregels in Python

Voorbeeld 4:

Een bestand lezen met de instructie 'with':

Java-programmeerpatronen

Als we de bovenstaande drie voorbeelden opmerken, kunnen we gemakkelijk vaststellen dat elke keer dat het bestand geopend moet zijn, het ook gesloten moet zijn; als we het bestand niet sluiten, zullen er verschillende bugs in het programma ontstaan, omdat veel wijzigingen niet in het bestand worden aangebracht of van kracht worden totdat we het bestand niet sluiten.

Om dit probleem te verhelpen, zullen we de 'with'-instructie gebruiken, die voornamelijk wordt gebruikt bij het afhandelen van uitzonderingen in Python, om de code duidelijker en veel leesbaarder te maken. Hier, in dit voorbeeld, kunt u eenvoudig zien dat we de functie file.close ( ) niet keer op keer gebruiken om het bestand te voorkomen. Het gebruik ervan kan automatisch worden gedaan met de instructie. Daarom worden er minder regels code gebruikt en kan het programma sneller worden uitgevoerd en efficiënter worden geïmplementeerd.

 # 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())) 

De uitvoer van het bovenstaande voorbeeld:

Leesregels in Python