Čitanje i pisanje u datoteku za pohranu ili kasniju upotrebu uobičajeni su zadaci u programiranju. Python ima brojne načine za rad s datotekama, ali ćemo se posebno usredotočiti na pisanje u tekstualne datoteke. Tekstualne datoteke koriste se za pohranu običnih tekstualnih podataka, a Python programerima olakšava čitanje i pisanje podataka u tekstualne datoteke.
U ovom vodiču objasnit ćemo kako korisnici mogu pisati u tekstualnu datoteku koristeći Python.
Python ima ugrađenu funkciju za stvaranje, pisanje ili čitanje datoteka. Može obraditi dvije vrste datoteka normalne tekstualne datoteke i binarne datoteke. Izbor između ova dva ovisi o podacima na kojima radite i zahtjevima aplikacije.
Sintaksa za otvaranje datoteke u Pythonu:
# Method 1: file = open (path_to_the_file, mode) # Manually required to close the file `file.close()` to ensure that # changes made are saved, and system resources are freed up. # Method 2: with open (path_to_the_file, mode) as file: # It automatically closes the file properly # after the block code is executed.
Funkcija open() može prihvatiti različite parametre. Ali korisnik se mora usredotočiti na prva dva:
Za pisanje u tekstualnu datoteku, korisnik će koristiti sljedeći način:
Način rada | Opis |
---|---|
'U' | Koristi se za otvaranje tekstualne datoteke za pisanje teksta. Datoteka je skraćena u ovom načinu rada znači da je postojeći sadržaj datoteke izbrisan. |
'a' | Koristi se za otvaranje tekstualne datoteke za dodavanje teksta. Pokazivač se postavlja na kraj datoteke, a novi se podaci dodaju postojećem sadržaju. |
Primjer: pokazati kako korisnik može pisati u tekstualnu datoteku koristeći Python
file.write(' ') file.writelines(' ')
U potpunosti ovisi o korisniku hoće li dodati tekst u sljedeći redak ili ne.
css granica
Primjer 2: Pokazati kako koristiti funkciju write() za pisanje popisa tekstova u tekstualnu datoteku
# Method 1 - Simple Approach file = open ('writeme.txt', 'w') file.write('writeme') file.close() # Method 2 - Using the 'with' keyword to open a file with open ('writeme.txt', 'w') as file: file.write('writeme')
Izlaz:
Obje metode daju isti rezultat.
Koraci za pisanje u tekstualnu datoteku u Pythonu:
Za pisanje u tekstualnu datoteku koristite Piton , korisnik mora slijediti sljedeće korake:
Korak 1 - Otvorite datoteku - Da bismo počeli pisati u tekstualnu datoteku, prvo je trebamo otvoriti pomoću ugrađene funkcije open(), koja uzima dva parametra: naziv datoteke (uključujući stazu ako datoteka nije u trenutnom direktoriju) i način rada u kojim želimo otvoriti datoteku. U slučaju pisanja u tekstualnu datoteku, možemo koristiti način 'w', koji označava način pisanja, ili način 'a', koji označava način dodavanja. Ako datoteka ne postoji, Python će stvoriti novu datoteku s danim imenom.
# Opening a file 'example.txt' file = open('example.txt', 'w')
Funkcija open() će vratiti objekt datoteke, a taj objekt datoteke će imati dvije korisne funkcije za pisanje teksta u njemu:
- pisati()
- redovi pisanja()
Funkcija write() koristi se za pisanje niza u tekstualnu datoteku, a funkcija writelines() koristi se za pisanje popisa niza u datoteku odjednom.
Funkcija writelines() također može prihvatiti objekt koji se može ponavljati. Korisnik također može proslijediti torku nizova, skup nizova itd.
Za pisanje u sljedećem retku, korisnik mora ručno dodati novi znak retka.
Korak 2 - Zapišite u datoteku: Čim se datoteka otvori u načinu pisanja, možemo upotrijebiti funkciju write() ili funkciju writelines() za pisanje u nju. Metoda write() uzima string kao parametar koji želimo upisati u datoteku. Možemo pisati više redaka pozivanjem funkcije write() više puta ili korištenjem znakova novog retka ( ) između nizova za odvajanje redaka.
# Using the 'write' function file.write('This is the first line. ') file.write('This is the second line. ') # Using the 'writelines' function file.writelines('This is the first line. This is the second line. ')
Korak 3 - Zatvorite datoteku: Korisnik može zatvoriti tekstualnu datoteku pomoću funkcije close(). Nakon što upišete željeni sadržaj u datoteku, važno ju je pravilno zatvoriti. Zatvaranjem datoteke osigurava se spremanje svih promjena i oslobađanje resursa sustava.
# Closing the file file.close()
Primjer 2: Pokazati kako korisnici mogu dodati novi znak retka u txt datoteku
file.write(' ') file.writelines(' ')
U potpunosti ovisi o korisnicima hoće li dodati tekst u sljedeći redak ili ne.
Primjer 3: Pokazati kako koristiti funkciju write() za pisanje popisa tekstova ili nizova u tekstualnu datoteku
# Creating a list of strings lines_1 = [ 'This is an example', 'to show how a user can write in a text file using Python'] with open('text.txt', 'w') as file: # Iterating over each element of the list for line_1 in lines_1: file.write(line_1) # Adding the line to the text.txt file.write(' ') # Adding a new line character
Izlaz:
Obrazloženje:
U gornjem primjeru, prvo smo stvorili popis znakovnih znakova pod nazivom lines_1, a zatim smo otvorili tu datoteku pomoću funkcije open() s naredbom 'with'. Zatim smo upotrijebili for-petlju za iteraciju po elementima popisa, nakon čega smo napisali red i dodali novi znak retka u datoteku. Novi znak retka dodaje se na kraju for petlje, a pokazivač se postavlja u sljedeći redak.
Ako datoteka text.txt ne postoji u mapi, funkcija open() će stvoriti novu datoteku, a operacije se izvode u skladu s tim.
Primjer 4: Da pokažete kako korisnici mogu napisati popis tekstualnih nizova u datoteku text.txt pomoću funkcije writelines():
# Creating a list of strings lines_1 = [ 'This is an example ', 'to show how a user can write in a text file using writelines() function in Python.'] # Opening the text.txt file with open('text.txt', 'w') as file: # Using the writelines() function file.writelines(lines_1)
Izlaz:
Obrazloženje:
U gornjem primjeru, funkcija writelines() upisuje svaki element popisa u jedan redak u datoteci.
Ako korisnik tretira svaki element popisa kao redak, mora ga povezati s novim znakom retka.
sql poredak slučajnim odabirom
Primjer 4: pokazati kako korisnik može povezati znak novog retka sa svakim elementom retka u datoteci text.txt
Već smo vidjeli u primjeru broj 3 kako možemo dodati novi znak retka nakon svakog elementa liste. Dok koristimo funkciju writelines(), moramo dodati novi znak retka u niz.
# Creating a list of strings lines_1 = [ 'This is an example ', 'to show how a user can link a new line character ', 'with each element of the list. '] # Opening the text.txt file with open('text.txt', 'w') as file: # Using the writelines function file.writelines(lines_1)
Izlaz:
Obrazloženje:
U gornjem primjeru, funkcija writelines() zapisuje element popisa u datoteku text.txt, gdje svaki element popisa završava znakom novog retka.
Zaključak
U ovom vodiču smo objasnili kako korisnik može pisati tekstove u tekstualnu datoteku koristeći Python i njegove različite funkcije. Najprije smo učili o normalnim i binarnim tekstualnim datotekama, a zatim sintaksu kako otvoriti datoteku. Također smo pogledali razliku između 'w' (način pisanja) i 'a' (način dodavanja). Zatim smo naučili o koracima pisanja u tekstualnu datoteku u Pythonu i implementirali razne primjere kako bismo razumjeli različite metode pisanja u tekstualnu datoteku.