✦ Osnove Pythona Modul rada sa podacima

Koncept 20 · Rad sa fajlovima

Sačuvajte i pročitajte tekst.
Koristite privremeni fajl u pregledaču.

Većina vrednosti nestane kada se program završi. Tekstualni fajl omogućava programu da sačuva tekst, a zatim ga ponovo pročita u kasnijem koraku.

01 Uči02 Isprobaj03 Predvidi

Učenje kao gost

Učiš kao gost — sačuvaj svoj napredak!

Napravi besplatan nalog i uči uz Sloby AI mentora, proveru razumevanja i praćenje napretka.

Cela platforma je besplatna tokom 2026. Foundations ostaje zauvek besplatan.

Otvori tekstualni fajl, upotrebi ga, a zatim prepusti Pythonu da ga zatvori.

Promenljiva čuva vrednost samo dok se program izvršava. Tekstualni fajl može da čuva znakove van tog privremenog stanja programa. Da bi bezbedno radio sa njim, otvori ga, uradi jedan jasan zadatak i izađi iz with bloka kako bi ga Python zatvorio umesto tebe.

with open("notes.txt", "w", encoding="utf-8") as file:
    file.write("Learning Python is fun!")

with open("notes.txt", "r", encoding="utf-8") as file:
    content = file.read()

print(content)

open("notes.txt", "w", encoding="utf-8") otvara fajl pod nazivom notes.txt. "w" znači „pisanje“; encoding="utf-8" govori Pythonu kako da sačuva i pročita običan tekst. as file daje otvorenom fajlu privremeno ime za uvučeni blok ispod njega.

Learning Python is fun!

with ... as file: je bezbedan obrazac, a ne nova vrsta vrednosti koju treba da zapamtiš. Unutar njegovog uvučenog bloka koristi file za pisanje ili čitanje. Kada izvršavanje izađe iz tog bloka, Python automatski zatvara fajl, iako program ovde nikada ne poziva posebnu komandu za zatvaranje.

↳

Zapamti ovaj životni ciklus fajla: program → otvori fajl → piši ili čitaj → izađi iz with bloka → automatski zatvori

Prati jedan potpuni ciklus pisanja i čitanja
with open("notes.txt", "w", encoding="utf-8") as file:
    file.write("Learning Python is fun!")

with open("notes.txt", "r", encoding="utf-8") as file:
    content = file.read()

print(content)

Python najpre otvara notes.txt u režimu pisanja i smešta string u fajl. Izlazak iz prvog with bloka zatvara ga. Zatim Python otvara isti fajl u režimu čitanja, file.read() vraća njegov sadržaj kao string, a content čuva vraćeni string. Na kraju print(content) ga prikazuje nakon što se zatvori drugi blok.

Čitaj argumente funkcije open() jedan po jedan
open("notes.txt", "w", encoding="utf-8")

"notes.txt" je ime fajla. "w" ga otvara za pisanje, a "r" za čitanje. UTF-8 je uobičajen način predstavljanja teksta, pa korišćenje istog kodiranja pri pisanju i čitanju pomaže Pythonu da dosledno tumači znakove.

file.write() šalje string u fajl
file.write("Learning Python is fun!")

file.write() prima string i smešta te znakove u otvoreni fajl. Ne ispisuje tekst na ekran; tekst postaje sadržaj fajla.

Režim pisanja počinje iznova
with open("notes.txt", "w", encoding="utf-8") as file:
    file.write("New note")

Otvaranje postojećeg tekstualnog fajla sa "w" zamenjuje njegov prethodni sadržaj. To je korisno kada program treba da napravi novu sačuvanu verziju, ali znači da režim pisanja treba pažljivo birati.

file.read() vraća sadržaj fajla kao string
content = file.read()

file.read() čita znakove iz fajla otvorenog sa "r" i vraća jedan string. Dodeljivanje tog rezultata promenljivoj content omogućava kasnijem kodu da ga ispiše, pregleda ili koristi kao tekst.

Ime posle as je privremeno
with open("notes.txt", "r", encoding="utf-8") as file:
    content = file.read()

file je jednostavno ime koje ovaj primer koristi dok je fajl otvoren. Koristi ga unutar uvučenog bloka, a zatim nakon završetka bloka zadrži rezultat u obliku stringa, kao što je content.

Playground u pregledaču koristi privremeno okruženje za fajlove
with open("notes.txt", "w", encoding="utf-8") as file:
    file.write("Practice")

Playground može bezbedno da prikaže kod za rad sa fajlovima, ali njegovi fajlovi postoje u privremenom Python okruženju pregledača. Ne čuvaju se kao fajlovi na tvom računaru kada se Playground sesija završi.

Praktičan kontrolni spisak za čitanje rada sa fajlovima

  1. Pronađi ime fajlaKoji tekst imenuje fajl koji će ovaj blok otvoriti?
  2. Pronađi režimDa li je fajl otvoren sa "w" za pisanje ili sa "r" za čitanje?
  3. Pročitaj with blokKoje se uvučene linije izvršavaju dok je privremeno ime file dostupno?
  4. Prati smer kretanja podatakaDa li string ulazi u fajl pomoću write() ili izlazi iz njega pomoću read()?
  5. Uoči kada se blok završavaKada se uvlačenje završi, Python automatski zatvara taj otvoreni fajl.
  6. Pronađi rezultat koji možeš da koristišKoja promenljiva tipa string nakon čitanja čuva sadržaj fajla za kasniji kod?

Česte početničke greške

  • Korišćenje režima čitanja kada program treba da pišeFajl otvoren sa "r" služi za čitanje. Koristi "w" kada je sledeći korak file.write(...).
  • Zaboravljanje da režim pisanja zamenjuje stari sadržajOtvaranje istog postojećeg fajla sa "w" počinje iznova, pa se prethodni tekst zamenjuje.
  • Pokušaj čitanja iz bloka otvorenog samo za pisanjePonovo otvori fajl sa "r" pre korišćenja file.read().
  • Pokušaj pisanja u bloku otvorenom samo za čitanjeKoristi zaseban blok sa "w" pre bloka za čitanje kada program prvo treba da sačuva tekst.
  • Smeštanje rada sa fajlom van uvlačenjaNaredbe koje koriste file pripadaju unutar uvučenog with bloka.
  • Korišćenje fajla nakon završetka njegovog with blokaKada se blok završi, taj otvoreni fajl je zatvoren. Umesto toga za kasniju upotrebu zadrži vraćeni string, kao što je content.

Python radni prostor

Učitavanje Python okruženja…

Ovaj Playground u pregledaču izvršava kod za rad sa fajlovima u privremenom okruženju. Promeni tekst, ponovo pokreni ceo primer pisanja i čitanja i posmatraj ispisani string. Ne pravi fajl na tvom računaru.

working_with_files.pyPython
IzlazČeka se Python
Okruženje pregledača se učitava. I dalje možeš da menjaš primer koda.

Pyodide pokreće Python u Web Worker-u pregledača. Zaustavlja se i ponovo pokreće ako se kod predugo izvršava. Izvršavanje u pregledaču nije potpuna bezbednosna granica; ne unosi tajne i ne oslanjaj se na njega za izolaciju nepouzdanog koda.

Šta će ovaj program ispisati?

Pročitaj svaku operaciju nad podacima pre nego što izabereš odgovor.

with open("todo.txt", "w", encoding="utf-8") as file:
    file.write("Read\nPractice")

with open("todo.txt", "r", encoding="utf-8") as file:
    print(file.read())
Izaberi izlaz
Sloby, maskota Python AI Tutora

Tvoj mentor za učenje

Prijavite se da pitate Slobyja

Napravite besplatan nalog ili se prijavite za AI smernice tokom učenja.

Prijavite se da proverite svoje razumevanje

Napravite besplatan nalog ili se prijavite da biste dobili AI povratnu informaciju i sačuvali napredak u učenju.

Python AI Tutor · Uči razumevanjem, a ne samo pokretanjem koda.