✦ Osnove Pythona Kolekcije

Koncept 12 · Iteriranje kroz kolekcije

Poseti svaku vrednost.
Neka petlja obavi posao.

For petlja prolazi kroz kolekciju jednu po jednu stavku. Imenujte trenutnu stavku, izvršite uvučeno telo, pa nastavite sa sledećom.

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.

For petlja prolazi kroz jednu stavku kolekcije u svakom koraku.

Već poznajete for petlje. Ovde koristite isti mehanizam sa kolekcijama: kolekcija → for petlja → jedna stavka po iteraciji → telo petlje. Python dodeljuje trenutnu stavku promenljivoj petlje, izvršava uvučeno telo i prelazi na sledeću stavku.

names = ["Ana", "Marko", "Jelena"]

for name in names:
    print(name)

Python uzima "Ana", dodeljuje je promenljivoj name i izvršava print(name). Ponavlja to za "Marko" i "Jelena", pa staje. name je jedna trenutna vrednost, a ne cela lista names. Isti obrazac radi i sa torkom.

Ana Marko Jelena

Pratite petlju: iteracija 1 → color = "red"; iteracija 2 → color = "blue"; iteracija 3 → color = "green"; zatim se petlja završava.

↳

Petlja može i da izgradi rezultat: Sa numbers = [2, 4, 6] i total = 0, svako total += number gradi rezultat: 0 → 2 → 6 → 12. Petlja ne samo da ispisuje stavke; može postepeno da sabira rezultat.

Iteriranje kroz rečnik počinje ključevima
student = {"name": "Ana", "course": "Python", "city": "Novi Sad"}

for key in student:
    print(key)

Obična petlja for key in student prolazi kroz ključeve rečnika, a ne kroz vrednosti. Koristite student.values() za vrednosti, a student.items() kada su potrebna oba dela.

Izaberite vrednosti ili parove ključ–vrednost
for value in student.values():
    print(value)

for key, value in student.items():
    print(key, value)

student.values() prolazi kroz vrednosti. student.items() daje parove kao ("name", "Ana"). Python svaki par raspakuje u promenljive key, value, kao kod raspakivanja torke.

Skup prolazi kroz svaki element, bez pouzdane pozicije
tags = {"python", "django", "ai"}

for tag in tags:
    print(tag)

Svaki element skupa biće posećen, ali ne gradite logiku koja zavisi od „prvog“ elementa. Skup nema indeksiranje po poziciji kao lista ili torka.

Pratite iteriranje kroz rečnik i akumulaciju
scores = {"Ana": 8, "Marko": 6, "Jelena": 10}
total = 0

for name, score in scores.items():
    total += score

print(total)
print(len(scores))

Počnite sa total = 0. Ana / 8 daje 8; Marko / 6 daje 14; Jelena / 10 daje 24. items() daje svaki par ključ–vrednost, raspakivanje stavlja broj u score, a len(scores) broji tri para.

Izaberite oblik iteracije prema nameri

  1. Jedna vrednost iz liste ili torkeKoristite for item in collection kada želite jednu uređenu stavku u svakom koraku.
  2. Svaki element skupaKoristite for item in set_name da posetite svaki element bez oslanjanja na pozicije ili redosled.
  3. Ključevi, vrednosti ili oba dela rečnikaKoristite for key in dictionary za ključeve, dictionary.values() za vrednosti i dictionary.items() uz key, value kada su potrebna oba dela.

Česte početničke greške

  • Tumačenje promenljive petlje kao cele kolekcijeU izrazu for name in names promenljiva name je jedno trenutno ime, a ne cela lista.
  • Očekivanje da petlja kroz rečnik daje vrednostiU izrazu for item in student promenljiva item je ključ. Koristite student.values() za vrednosti.
  • Raspakivanje nečega što nije parfor key, value in student.items() radi zato što je svaka stavka dvodelni par ključ–vrednost.
  • Oslanjanje na redosled skupaNe gradite logiku oko „prvog“ elementa skupa. Koristite listu ili torku kada su važni pozicija i redosled.
  • Zaboravljanje uvlačenjaKod koji pripada petlji mora biti uvučen, inače Python ne zna koja se naredba izvršava za svaku stavku.

Python radni prostor

Učitavanje Python okruženja…

Pre pokretanja koda predvidite šta predstavljaju <code>key</code> i <code>value</code>. Zatim dodajte ili izmenite jedan par rečnika, pokrenite kod ponovo i posmatrajte novu iteraciju.

iterating_over_collections.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 pre nego što izabereš odgovor.

numbers = [2, 4, 6]
total = 0

for number in numbers:
    total += number

print(total)
print(len(numbers))
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.