logo

Readlines u Pythonu

  • Readlines ( ) je funkcija koja se koristi u Pythonu za čitanje određene datoteke red po red u jednom potezu.
  • Vrlo je koristan u smanjenju vremenska složenost tijekom čitanja datoteke korištenjem brute force pristupa i korištenjem petlji i različitih iteracija.
  • To je jednoredni kod i jednostavna funkcija, koja je mnogo bolja od korištenja mnogo petlji za samo čitanje datoteke.
  • U C programiranju, čitanje datoteke prilično je težak zadatak, ali ga je vrlo lako implementirati zahvaljujući ovoj readlines ( ) funkciji u Pythonu.
  • readlines ( ) funkcija čita samo jedan cijeli redak iz zadane datoteke; nakon čitanja, vraća cijeli redak koji sadrži sve elemente u obliku liste.
  • Ako želimo otvoriti datoteku u normalnom načinu čitanja, readline ( ) funkcija će nam vratiti niz.
  • Ako želimo otvoriti datoteku u binarnom načinu rada, funkcija readline ( ) vratit će vam binarni objekt.
  • Također je vrlo korisno dodati novi redak ( ' ' ) na kraj retka.
  • Ova funkcija readlines ( ) uglavnom je prikladna za datoteke male veličine, koje sadrže manje podataka za jednostavno čitanje cijele datoteke u kraćem vremenu.
  • Prvo čita sadržaj datoteke u memoriju u jednom potezu, a zatim ih razdvaja u različite retke. Uz pomoć funkcije strip ( ) možemo iterirati po cijelom popisu koji je generirala funkcija readline ( ), a korištenjem funkcije strip ( ) možemo ukloniti znak novog retka ' '.

Koncept Python datoteke

Programski jezik Python ima razne ugrađene funkcije za pisanje, stvaranje, i čitanje datoteka. Python obrađuje dvije vrste datoteka, a to su normalne tekstualne datoteke, a druga su binarne datoteke uglavnom napisane u binarnom jeziku koji se sastoji od 0 i 1.

    Tekstualne datoteke:Ove datoteke sadrže podatke u obliku teksta, koji završava posebnim znakom koji se zove EOL ( kraj retka ), znak novog retka ( ' ' ) u Pythonu prema zadanim postavkama.Binarne datoteke:Ove vrste datoteka sadrže podatke u obliku binarnih nizova koji se uglavnom sastoje od 0 i 1.

Određeni osnovni koraci koje treba izvršiti u datoteci:

Otvaranje datoteke: Otvaranje datoteke vrši se pomoću funkcije open ( ); dok koristimo ovu funkciju, moramo proslijediti naziv datoteke i način pristupa kao argument.

Ovdje su načini pristupa datoteci sljedeći:

    Samo za čitanje ( r ):Koristi se za čitanje podataka iz datoteke. Pozicionira početak datoteke. Ako navedena datoteka nije prisutna, generirat će ulazno/izlaznu pogrešku. Samo za čitanje je zadani način otvaranja datoteke; dok koristimo ovaj način rada, ne možemo uređivati ​​podatke datoteke ili ih ne možemo pisati u datoteku.Pišite samo ( ' w ' ):Koristi se za upisivanje podataka u datoteku, pozicioniranje na početak datoteke. Ako spomenuta datoteka nije prisutna, tada će generirati ulazno/izlaznu pogrešku. Dok koristimo ovaj način rada, ne možemo čitati podatke iz datoteke.Čitaj i piši ( ' r+ ' ):Ovaj način se koristi za pisanje i čitanje podataka iz datoteke. Ako ga usporedimo s prethodnim načinom, možemo razlikovati da ne možemo pisati u datoteku u načinu samo za čitanje, ali možemo čitati i pisati u datoteku u ovom načinu.

Na primjer, ako imamo datoteku pod nazivom hello.txt i želimo je otvoriti u načinu pisanja, tada je možemo koristiti kao:

kako provjeriti veličinu zaslona

Datoteka1 = otvori ( 'hello.txt', 'w')

Zatvaranje datoteke: Funkcija zatvaranja koristi se za oslobađanje memorijskog prostora potrebnog za datoteku; ova metoda je kada više nema potrebe za datotekom ili ako želimo zatvoriti cijelu datoteku i želimo otvoriti datoteku u drugom načinu rada. Izvodi se pomoću funkcije close (), a unutar te funkcije ne moramo proslijediti nijedan argument; ovoj se funkciji može pristupiti pomoću naziva datoteke i opskrbljena funkcijom zatvaranja točke.

Na primjer, ako imamo datoteku pod nazivom hello.txt i želimo je otvoriti u načinu pisanja, tada je možemo koristiti kao:

Datoteka1 = otvori ( 'hello.txt', 'w')
File1.close ( )

Zapisivanje u datoteku: Kao što naziv sugerira, ovom metodom možemo lako predvidjeti što trebamo napisati u datoteku. Postoje dva načina pisanja u datoteku:

usporedba lava i tigra
    Napiši ( ):U ovoj funkciji moramo proslijediti jedan argument, niz koji želimo umetnuti u datoteku.
    Na primjer, ako imamo datoteku pod nazivom hello.txt i želimo je otvoriti u načinu pisanja, tada je možemo koristiti kao:
    Datoteka1 = otvori ( 'hello.txt', 'w')
    File1.write (str)
    Ovdje je str niz koji želimo umetnuti u datoteku.Redovi pisanja ( ):U ovoj funkciji moramo proslijediti niz ili popis koji se sastoji od više nizova. Koristi se za umetanje više različitih stringova u datoteku odjednom.
    Na primjer, ako imamo datoteku pod nazivom hello.txt i želimo je otvoriti u načinu pisanja, tada je možemo koristiti kao:
    Datoteka1 = otvori ( 'hello.txt', 'w')
    File1.writelines(S) za S = [str1, str2, str3]

Čitanje iz datoteke: Slično, u ovome, možemo predvidjeti da ono što moramo učiniti u ovome; čak iu ovom vodiču ćemo detaljno pročitati jednu od metoda čitanja. U ovoj metodi moramo pročitati podatke iz određene datoteke. Postoje tri načina za čitanje podataka iz datoteke:

polimorfizam
    Čitati ( ):Vraća pročitane bajtove u obliku niza. Čita n bajtova; ako n nije naveden, onda čita cijelu datoteku.Readline ( ):Čita redak datoteke i vraća u obliku niza. Za navedeno n, čita najviše n bajtova. readline ( ) funkcija ne čita više od jednog retka odjednom; čak i ako n premaši, čita samo jedan red. Readline ( ) funkcija čita redak datoteke i vraća ga u nizu. Potrebna je cjelobrojna vrijednost n kao parametar za očitavanje broja znakova koji se istovremeno čitaju. Readline ( ) metoda je vrlo učinkovita u čitanju podataka iz vrlo velike datoteke jer dohvaća podatke red po red i vraća ih i ispisuje na ekranu. Readline ( ) vraća sljedeći redak datoteke, koji na kraju sadrži znak novog retka. Također, ako se dosegne kraj datoteke, vratit će prazan niz.redovi za čitanje ( ):Čita sve retke i vraća ih kao element niza na popisu. Readlines ( ) koristi se za čitanje svih redaka odjednom i zatim ih vraća kao element niza na popisu. Ova se funkcija može koristiti za male datoteke, jer čita cijeli sadržaj datoteke u memoriju, a zatim ga dijeli u zasebne retke. Koristeći funkciju strip (), možemo iterirati po popisu i ukloniti znak novog retka ' ' pomoću funkcije strip ( ).

Razmotrimo sada koncept čitanja datoteke u detalje uz pomoć primjera:

Primjeri čitanja datoteke u Pythonu:

Primjer 1:

Čitanje datoteke pomoću funkcije 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())) 

Rezultat gornjeg primjera:

Readlines u Pythonu

Primjer 2:

prilagođena iznimka u Javi

Čitanje datoteke pomoću funkcije 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() 

Rezultat gornjeg primjera:

Readlines u Pythonu

Primjer 3:

Čitanje datoteke pomoću jednostavne for petlje:

U ovoj metodi ne koristimo funkciju readline ( ), pa čak ni funkciju readlines ( ), budući da smo već vidjeli korištenje obje funkcije u gornjim primjerima; u ovoj metodi koristit ćemo for petlju za ispis podataka datoteke. Iterirati ćemo objekte datoteke i čitati datoteku redak po redak, iako koristimo neke Python unaprijed definirane ugrađene funkcije. Koristeći ove ugrađene Python funkcije, možemo jednostavno iterirati preko objekta datoteke implicitno koristeći for petlju, u kombinaciji s korištenjem objekta koji se može ponavljati.

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

Rezultat gornjeg primjera:

snijeg protiv leda
Readlines u Pythonu

Primjer 4:

Čitanje datoteke pomoću naredbe 'with':

Ako primijetimo gornja 3 primjera, lako možemo primijetiti da svaki put kada se datoteka treba otvoriti, tada je potrebno zatvoriti; ako ne zatvorimo datoteku, onda će to stvoriti nekoliko grešaka u programu jer mnoge promjene nisu učinjene u datoteci ili stupaju na snagu dok ne zatvorimo datoteku.

Dakle, da bismo prevladali ovaj problem, koristit ćemo naredbu 'with', koja se uglavnom koristi u rukovanju iznimkama u Pythonu, kako bi kod bio jasniji i mnogo čitljiviji. Ovdje, u ovom primjeru, možete lako primijetiti da ne koristimo funkciju file.close ( ), opet i opet, kako bismo spriječili datoteku, korištenje se može učiniti automatski s naredbom. Stoga smanjuje redove koda i čini program bržim za izvođenje i učinkovitijom implementacijom.

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

Rezultat gornjeg primjera:

Readlines u Pythonu