logo

Readlines v Pythonu

  • Readlines ( ) je funkce, která se v Pythonu používá k přečtení konkrétního souboru řádek po řádku jedním tahem.
  • Je velmi užitečné při snižování časovou složitost při čtení souboru pomocí přístupu hrubou silou a pomocí smyček a různých iterací.
  • Je to a jednořádkový kód a jednoduchá funkce, která je mnohem lepší než použití mnoha smyček pro pouhé čtení souboru.
  • V programování v C je čtení souboru docela obtížný úkol, ale je velmi snadné ho implementovat díky této funkci readlines ( ) v Pythonu.
  • funkce readlines ( ) přečte pouze jeden celý řádek z daného souboru; po přečtení vrátí celý řádek obsahující všechny prvky ve formě seznamu.
  • Pokud chceme soubor otevřít v normálním režimu čtení, funkce readline ( ) nám vrátí řetězec.
  • Pokud chceme soubor otevřít v binárním režimu, funkce readline ( ) vám vrátí binární objekt.
  • Je také velmi užitečné připojit nový řádek ( ' ' ) na konec řádku.
  • Tato funkce readlines ( ) je většinou vhodná pro malé soubory, které obsahují méně dat, aby bylo možné celý soubor snadno přečíst za kratší dobu.
  • Nejprve načte obsah souboru do paměti jedním tahem a poté je rozdělí do různých řádků. Pomocí funkce strip ( ) můžeme iterovat celý seznam, který byl vygenerován funkcí readline ( ), a pomocí funkce strip ( ) odstranit znak nového řádku ' '.

Koncept souboru Python

Programovací jazyk Python má různé vestavěné funkce psaní, tvoření, a čtení souborů. Dva typy souborů jsou zpracovávány v Pythonu, což jsou normální textové soubory, a druhým jsou binární soubory napsané převážně v binárním jazyce, což jsou 0 a 1.

    Textové soubory:Tyto soubory obsahují data ve formě textu, který je v Pythonu standardně ukončen speciálním znakem zvaným EOL ( end of line ), znakem nového řádku ( ' ' ).Binární soubory:Tyto typy souborů obsahují data ve formě binárních sekvencí, skládajících se převážně z nul a jedniček.

Některé základní kroky, které je třeba provést v souboru:

Otevření souboru: Otevření souboru se provádí pomocí funkce open ( ); při použití této funkce musíme jako argument předat název souboru a režim přístupu.

Zde jsou režimy přístupu k souborům následující:

    Pouze pro čtení ( r ):Slouží ke čtení dat ze souboru. Je to umístění začátku souboru. Pokud zmíněný soubor není přítomen, vygeneruje chybu vstupu/výstupu. Pouze pro čtení je výchozí režim otevírání souboru; při použití tohoto režimu nemůžeme upravovat data souboru ani je nelze do souboru zapisovat.Napište pouze ( ' w ' ):Používá se k zápisu dat do souboru, umístění začátku souboru. Pokud zmíněný soubor není přítomen, vygeneruje chybu vstupu/výstupu. Při použití tohoto režimu nemůžeme číst data ze souboru.Číst a zapisovat ( ' r+ ' ):Tento režim se používá pro zápis a čtení dat ze souboru. Pokud to porovnáme s předchozím režimem, můžeme rozlišit, že v režimu jen pro čtení nemůžeme do souboru zapisovat, ale v tomto režimu můžeme do souboru číst a zapisovat.

Pokud máme například soubor s názvem hello.txt a chceme jej otevřít v režimu zápisu, můžeme jej použít jako:

jak číst soubor csv v java

Soubor1 = otevřít ( ' hello.txt ' , ' w ' )

Zavření souboru: Funkce Zavřít se používá k uvolnění místa v paměti požadovaného souboru; tato metoda je, když již soubor není potřeba nebo když chceme zavřít celý soubor a chceme soubor otevřít v jiném režimu. Provádí se pomocí funkce close ( ) a uvnitř této funkce nemusíme zadávat žádný argument; k této funkci lze přistupovat pomocí názvu souboru a dodané funkcí zavírání tečky.

léčit nástroj gimp

Pokud máme například soubor s názvem hello.txt a chceme jej otevřít v režimu zápisu, můžeme jej použít jako:

Soubor1 = otevřít ( ' hello.txt ' , ' w ' )
File1.close ( )

Zápis do souboru: Jak název napovídá, při této metodě můžeme snadno předpovědět, co musíme do souboru zapsat. Existují dva způsoby zápisu do souboru:

    Napsat ( ):V této funkci musíme předat jediný argument, řetězec, který chceme vložit do souboru.
    Pokud máme například soubor s názvem hello.txt a chceme jej otevřít v režimu zápisu, můžeme jej použít jako:
    Soubor1 = otevřít ( ' hello.txt ' , ' w ' )
    File1.write ( str )
    Zde je str řetězec, který chceme vložit do souboru.Writelines ( ):V této funkci musíme předat pole nebo seznam skládající se z více řetězců. Používá se k vložení více různých řetězců do souboru najednou.
    Pokud máme například soubor s názvem hello.txt a chceme jej otevřít v režimu zápisu, můžeme jej použít jako:
    Soubor1 = otevřít ( ' hello.txt ' , ' w ' )
    File1.writelines( S ) pro S = [ str1 , str2 , str3 ]

Čtení ze souboru: Podobně v tomto můžeme předvídat, co v tomto musíme udělat; i v tomto tutoriálu se budeme podrobně zabývat jednou z metod čtení. V této metodě potřebujeme načíst data z konkrétního souboru. Existují tři způsoby, jak číst data ze souboru:

java double to string
    Přečíst ( ):Vrátí přečtené bajty ve formě řetězce. Čte n bajtů; pokud n není zadáno, přečte celý soubor.Přečíst řádek ( ):Přečte řádek souboru a vrátí se ve formě řetězce. Pro zadané n přečte maximálně n bajtů. funkce readline ( ) nečte více než jeden řádek najednou; i když n překročí, přečte pouze jeden řádek. Funkce Readline ( ) přečte řádek souboru a vrátí jej v řetězci. K přečtení počtu znaků přečtených najednou potřebuje celočíselnou hodnotu n jako parametr. Metoda Readline ( ) je velmi účinná při čtení dat z velmi velkého souboru, protože načítá data řádek po řádku a vrací se a tiskne na obrazovku. Readline ( ) vrátí další řádek souboru, který na konci obsahuje znak nového řádku. Také pokud je dosaženo konce souboru, vrátí prázdný řetězec.readline ( ):Přečte všechny řádky a vrátí je jako prvek řetězce v seznamu. Čtení řádků ( ) se používá k přečtení všech řádků najednou a poté je vrátí jako prvek řetězce v seznamu. Tuto funkci lze použít pro malé soubory, protože načte celý obsah souboru do paměti a poté jej rozdělí na samostatné řádky. Pomocí funkce strip () můžeme iterovat přes seznam a odstranit znak nového řádku ' ' pomocí funkce strip ( ).

Nyní pochopme podrobně koncept čtení souboru pomocí příkladu:

Příklady čtení souboru v Pythonu:

Příklad 1:

Čtení souboru pomocí funkce 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())) 

Výstup z výše uvedeného příkladu:

Readlines v Pythonu

Příklad 2:

Čtení souboru pomocí funkce 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() 

Výstup z výše uvedeného příkladu:

Readlines v Pythonu

Příklad 3:

Čtení souboru pomocí jednoduché smyčky for:

řetězec na char java

V této metodě nepoužíváme funkci readline ( ) a dokonce ani funkci readlines ( ), jak jsme již viděli použití obou funkcí ve výše uvedených příkladech; v této metodě použijeme cyklus for pro tisk dat souboru. Budeme iterovat objekty souboru a číst soubor řádek po řádku, i když používáme některé předdefinované vestavěné funkce pythonu. Pomocí těchto vestavěných funkcí Pythonu můžeme snadno iterovat objekt file implicitně pomocí cyklu for v kombinaci s použitím iterovatelného objektu.

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

Výstup z výše uvedeného příkladu:

Readlines v Pythonu

Příklad 4:

Čtení souboru pomocí příkazu ' with ':

srovnání s javou

Pokud si všimneme výše uvedených 3 příkladů, můžeme snadno pozorovat, že pokaždé, když je třeba soubor otevřít, je vyžadováno jeho uzavření; pokud soubor nezavřeme, vytvoří v programu několik chyb, protože mnoho změn se v souboru neprovede nebo vstoupí v platnost, dokud soubor nezavřeme.

Abychom tento problém překonali, použijeme příkaz ' with ', který se používá hlavně při zpracování výjimek v Pythonu, aby byl kód jasnější a mnohem čitelnější. Zde, v tomto příkladu, můžete snadno pozorovat, že nepoužíváme funkci file.close () znovu a znovu, abychom zabránili souboru, její použití lze automaticky provést pomocí příkazu. Tím se snižuje počet řádků kódu a program se rychleji spouští a implementuje efektivněji.

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

Výstup z výše uvedeného příkladu:

Readlines v Pythonu