Uvod
Jedna od primarnih funkcija programskih jezika je da vam pomognu u radu s podacima. To uključuje pisanje, čitanje, pohranu, kao i prijenos podataka. Python je jedan od najpopularnijih programskih jezika. Ako planirate koristiti Python, trebali biste imati osnovnu predodžbu o tome kako koristiti različite vrste datoteka. Najjednostavnija vrsta datoteka je txt ili format obične tekstualne datoteke. Zamislite da imate program koji provjerava korisnike radi kontrole pristupa. Sam popis bit će spremljen kao tekstualna datoteka. Stoga, iako možete koristiti drugi program za određene korporacije, izdvojit ćete vrijednosti iz tekstualnog dokumenta. Zato je važno razumjeti format tekstualne datoteke.
U ovom vodiču, započinjemo s kratkom pozadinom o osnovnim formatima datoteka u Pythonu. Zatim ćemo otkriti kako otvoriti, čitati i pisati tekstualne datoteke u programu.
Prije nego što počnemo…
Prije nego što započnemo s vodičem, morate ispuniti neke preduvjete. Prvo, trebali biste već imati instaliran Python 3. Osim toga, trebate lokalno programsko okruženje na svom sustavu. Ovaj vodič je primjenjiv na Ubuntu 16.04 i novije verzije, Debian 8, CentOS 7, Mac OS X i Windows 10.
Formati datoteka
Postoje različiti formati datoteka koje možete koristiti u Pythonu. Tablica u nastavku prikazuje sve različite formate i gdje ih možete koristiti:
| Vrsta datoteke | Opis |
|---|---|
| txt | Obična tekstualna datoteka pohranjuje podatke koji predstavljaju samo znakove (ili nizove) i isključuje bilo kakve strukturirane metapodatke. |
| CSV | Datoteka s vrijednostima odvojenim zarezima koristi zareze (ili druge razdjelnike) za strukturiranje pohranjenih podataka, omogućujući spremanje podataka u obliku tablice. |
| HTML | HyperText Markup Language datoteka pohranjuje strukturirane podatke i obično se koristi s većinom web stranica. |
| JSON | JavaScript Object Notation jednostavan je i učinkovit format, što ga čini jednim od najčešće korištenih formata za pohranu i prijenos podataka. |
U ovom vodiču detaljnije ćemo istražiti txt format datoteke.
Korak 1: Stvaranje tekstualne datoteke
Prvo moramo stvoriti novu tekstualnu datoteku u Pythonu. Razmotrit ćemo primjer za dane u tjednu radi lakšeg razumijevanja. Za to ćemo otvoriti uređivač teksta, stvoriti novu txt datoteku i nazvati je days.txt. Zatim unesimo dane u tjednu kao pojedinačne retke u novu datoteku:
|
1 2 3 4 5 6 7 |
Ponedjeljak Utorak Srijeda Četvrtak Petak Subota Nedjelja |
Sada kada imamo sadržaj, spremit ćemo datoteku. Važno je mentalno zabilježiti gdje spremate datoteku. Recimo da je naš korisnik sammy. Korisnik je spremio datoteku na sljedeću putanju: /users/sammy/days.txt. Koristit ćemo ovu putanju u budućim procesima.
Korak 2: Otvaranje tekstualne datoteke
Prije nego što počnete s pisanjem programa, morate stvoriti datoteku u uređivaču. Napravit ćemo datoteku pod nazivom files.py i spremiti je u /users/sammy direktorij kao i našu days.txt datoteku.
Da biste otvorili bilo koju datoteku, morate pokrenuti vezu između datoteke na disku i varijable. To je ono što čini „otvaranje” datoteke. Lokacija datoteke označena je putanjom datoteke. Putanja vam je potrebna za otvaranje datoteke. Na primjer, putanja datoteke days.txt je sljedeća: /users/sammy/days.txt. Zatim ćemo stvoriti string varijablu za spremanje ovih podataka. Kao što ćete vidjeti u nastavku, napravit ćemo path varijablu u skripti files.py i promijeniti varijablu prema days.txt putanji:
|
1 |
path = '/users/sammy/days.txt' |
Nakon toga, koristeći funkciju open(), otvorit ćemo datoteku days.txt file. Za ovu funkciju morate navesti putanju datoteke. Između ostalih parametara, najvažniji je parametar načina rada (mode). To je neobavezni niz koji možete dodati kako biste odredili način na koji otvarate datoteku. Slijedi nekoliko opcija načina rada:
'r’: čitanje'w’: pisanje'x’: stvaranje i pisanje nove datoteke'a’: dodavanje na kraj datoteke'r+’: čitanje i pisanje iste datoteke
Za jednostavno čitanje iz datoteke, trebate koristiti način rada 'r’. Pokrenite funkciju open() i otvorite datoteku days.txt. Zatim je dodijelite varijabli days_file :
|
1 |
days_file = open(path,'r') |
Korak 3: Čitanje tekstualne datoteke
Nakon otvaranja datoteke, možemo čitati iz nje putem varijable. Postoje tri operacije povezane s čitanjem datoteka. Istražimo sve tri.
Prva operacija je <file>.read(). Prikazat će vam cijeli sadržaj datoteke u jednom stringu:
|
1 |
days_file.read() |
Izlaz:
|
1 |
'Monday\nTuesday\nWednesday\nThursday\nFriday\nSaturday\nSunday\n' |
<file>.readline(). Ovo će vam prikazati sljedeći redak u datoteci. Zapravo će čitati datoteku redak po redak:|
1 |
days_file.readline() |
Izlaz:
|
1 |
'Monday\n' |
|
1 |
days_file.readline() |
Izlaz:
|
1 |
'Tuesday\n' |
<file>.readlines(). Prikazat će vam popis svih redaka u datoteci. Svaka stavka predstavlja jedan redak:|
1 |
days_file.readlines() |
Izlaz:
|
1 |
['Monday\n', 'Tuesday\n', 'Wednesday\n', 'Thursday\n', 'Friday\n', 'Saturday\n', 'Sunday\n'] |
Korak 4: Pisanje u datoteku
Zatim ćemo naučiti kako pisati u novu datoteku. Ova će datoteka, u našem primjeru, imati naslov (Days of the Week), a zatim dane u tjednu koji slijede.
Za početak, moramo stvoriti title varijablu:
|
1 |
title = 'Days of the Week\n' |
Zatim moramo spremiti dane u tjednu u obliku string varijable. Ova varijabla će se zvati days. Nastavit ćemo koristiti kod koji smo koristili u gornjim koracima. Otvorit ćemo datoteku u načinu za čitanje i pohraniti izlaz u našu novu days varijablu:
|
1 2 3 |
path = '/users/sammy/days.txt' days_file = open(path,'r') days = days_file.read() |
To znači da smo izradili varijable za naslov kao i za pojedinačne dane u tjednu. Sada možemo pisati u samu datoteku. Prvi korak je navođenje lokacije datoteke pomoću direktorija /users/sammy/. U putanji ćete također navesti novu datoteku: /users/sammy/new_days.txt. Putanja lokacije ostat će pod varijablom new_path. Zatim otvorite datoteku u načinu za pisanje pomoću funkcije open() u ‘w’ načinu rada:
|
1 2 |
new_path = '/users/sammy/new_days.txt' new_days = open(new_path,'w') |
Sada kada je datoteka otvorena, možete unijeti podatke pomoću funkcije pisanja <file>.write(). Ovdje trebate unijeti jedan string parametar. Ako želite unijeti novi redak, unesite znak za novi redak. Za našu datoteku prvo ćemo unijeti naslov, a zatim dane u tjednu. Uz to ćemo imati i nekoliko naredbi za ispis kako bismo pratili napredak skripte:
|
1 2 3 4 |
new_days.write(title) print(title) new_days.write(days) print(days) |
Korak 5: Zatvaranje datoteke
Kada zatvorite datoteku, prekidate vezu između datoteke na disku i varijable datoteke. Kada je datoteka zatvorena, mogu joj pristupiti drugi programi. To također pomaže u očuvanju sigurnosti datoteke i njezinih podataka. Stoga se uvijek sjetite zatvoriti datoteke kada završite s njihovom obradom. Da biste to učinili, možete koristiti <file>.close() funkciju:
|
1 2 |
days_file.close() new_days.close() |
Time je završen aspekt obrade datoteka u Pythonu.
Korak 6: Provjera koda
Na kraju ćemo provjeriti kod. To biste trebali učiniti prije nego što pokrenete kod koji ste napisali. Kod bi trebao izgledati otprilike ovako:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
path = '/users/sammy/days.txt' days_file = open(path,'r') days = days_file.read() new_path = '/users/sammy/new_days.txt' new_days = open(new_path,'w') title = 'Dani u tjednu\n' new_days.write(title) print(title) new_days.write(days) print(days) days_file.close() new_days.close() |
Once you save the code, you have to run the Python script. For that, you need to open the terminal:
|
1 |
$ python files.py |
It will show the following output:
|
1 2 3 4 5 6 7 8 9 |
Dani u the tjednu Ponedjeljak Utorak Srijeda Četvrtak Petak Subota Nedjelja |
To check your code, you will open the new file which is new_days.txt. If everything is fine, you will see the following:
|
1 2 3 4 5 6 7 8 9 |
Dani u the tjednu Ponedjeljak Utorak Srijeda Četvrtak Petak Subota Nedjelja |
If you see something similar to the above, you completed the steps successfully.
Zaključak
Kroz ovaj vodič cilj nam je bio naučiti vas o osnovnim formatima datoteka u Pythonu 3. Među njima, jedan od najvažnijih je tekstualni format datoteke. Istražili smo ga detaljnije. Sada ste dobro upoznati s postupkom i koracima uključenim u otvaranje, čitanje, pisanje i zatvaranje podatkovnih datoteka. Koristeći ove informacije, moći ćete učinkovito koristiti tekstualni format datoteke u vlastitom iskustvu programiranja u Pythonu.
Sada kada ste naučili kako raditi s običnim tekstualnim datotekama u Pythonu, evo još nekoliko vodiča s našeg bloga koji će vam pomoći da počnete koristiti Python:
- Korištenje oblikovatelja nizova u Pythonu 3
- Petlje u Pythonu 3: Korištenje naredbi Break, Continue i Pass
- Python 3: Vodič za pretvorbu tipova podataka
- Kako pretraživati web stranicu pomoću Scrapyja i Pythona 3
Sretno programiranje!
Komentari
Još nema komentara. Budite prvi.