✦ Osnove Pythona Kolekcije

Koncept 14 · Izbor odgovarajuće kolekcije

Izaberi prema nameni.
Uskladi kolekciju sa podacima.

Izaberi kolekciju čije ponašanje najbolje odgovara potrebama tvog programa. Redosled, promenljivost, jedinstvenost i smisleni ključevi ukazuju na različite izbore.

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.

Izaberi kolekciju prema ponašanju koje tvoji podaci zahtevaju.

Više Python kolekcija ponekad može da čuva iste vrednosti. Najbolji izbor je onaj koji jasno pokazuje nameru programa: da li su ti potrebni redosled, izmene, jedinstvenost ili pronalaženje po smislenom imenu?

PROBLEM / NAMERA
        ↓
KOJE PONAŠANJE PODACI ZAHTEVAJU?
        ↓
IZABERI KOLEKCIJU

Izbor kolekcije izražava nameru. coordinates = (45.26, 19.83) tehnički može biti lista, ali torka čitaocu govori da je to jedna fiksna, povezana grupa čije pozicije imaju značenje.

tags = {"python", "django", "python"} govori da su jedinstvenost i pripadnost važniji od pozicije. student = {"name": "Ana", "city": "Novi Sad"} govori da se vrednosti pronalaze preko smislenih ključeva, a ne preko magičnih pozicija.

↳

Korisno pravilo: Dobar izbor kolekcije olakšava razumevanje modela podataka. Ispravan Python nije uvek i najsmisleniji prikaz podataka.

Tehnički moguće naspram smislenog
user = ["Ana", 22, "Novi Sad"]

user_profile = {
    "name": "Ana",
    "age": 22,
    "city": "Novi Sad",
}

Obe vrednosti su ispravan Python. Rečnik je obično jasniji za profil korisnika jer svaka vrednost ima smislenu oznaku umesto pozicije koju moraš da pamtiš.

Pitanja za odluku: biraj prema ponašanju
Trebaju li ti smisleni ključevi?          → dictionary
Trebaju li ti jedinstvenost ili pripadnost? → set
Treba li ti fiksna povezana grupa?         → tuple
Trebaju li ti uređene vrednosti koje se menjaju? → list

Ovo je okvir za odluku prilagođen početnicima, a ne pravilo za svaki mogući program. Pomaže ti da pre izbora sintakse imenuješ ponašanje koje je najvažnije.

Izbori iz stvarnog sveta
recipe_steps = ["Prepare dough", "Add sauce", "Bake"]
coordinates = (45.26, 19.83)
skills = {"python", "django", "sql"}
profile = {"name": "Ana", "email": "ana@example.com", "city": "Novi Sad"}

Koraci recepta su uređeni i mogu da se menjaju, zato koristi listu. Koordinate su fiksan povezani par, zato koristi torku. Veštine zahtevaju jedinstvenost i proveru pripadnosti, zato koristi skup. Profil koristi imenovana polja, zato koristi rečnik.

Prati kompromis: lista ili skup?
participants = ["Ana", "Marko", "Ana", "Jelena"]
unique_participants = set(participants)

Lista čuva svaku prijavu redom i može da sadrži duplikate. Skup čuva samo jedinstvena imena. Time se menja prikaz podataka jer program sada vodi računa o jedinstvenosti, a ne o pristupu po poziciji ili redosledu prikaza.

Kolekcija se može promeniti sa zadatkom
visitors = ["Ana", "Marko", "Ana"]
unique_visitors = set(visitors)

Podaci ne moraju zauvek ostati u istoj vrsti kolekcije. Izaberi prikaz koji odgovara zadatku koji sada radiš; ovde drugi zadatak zahteva jedinstvene posetioce.

Praktična heuristika za odluku

  1. Trebaju li ti smislene oznake?Izaberi rečnik za odnose ključ → vrednost, kao što je profil korisnika.
  2. Trebaju li ti jedinstvenost ili pripadnost?Izaberi skup kada duplirane vrednosti nisu korisne i kada je važno pitanje „da li je ovo prisutno?“.
  3. Treba li ti fiksna povezana grupa?Izaberi torku za uređene vrednosti koje pripadaju zajedno i tretiraju se kao fiksne.
  4. Trebaju li ti uređene vrednosti koje mogu da se menjaju?Izaberi listu kada je redosled važan i kada kolekcija treba da raste, smanjuje se ili se ažurira.

Česte početničke greške

  • Korišćenje skupa kada je pozicija važnaSkup služi za jedinstvenost i pripadnost, a ne za stabilan pristup po poziciji ili uređeni prikaz.
  • Korišćenje magičnih pozicija liste za imenovana poljaLista kao što su user[0], user[1] i user[2] skriva značenje. Koristi rečnik kada vrednosti prirodno imaju imena.
  • Očekivanje da se torka menjaTorka predstavlja fiksnu povezanu grupu; izaberi listu kada treba da zameniš, dodaš ili ukloniš stavke.
  • Očekivanje da skup čuva duplikateSkup čuva jedinstvene vrednosti. Koristi listu kada su ponovljene vrednosti važne za zadatak.
  • Korišćenje rečnika kada su dovoljne jednostavne uređene vrednostiRečnik dodaje oznake i pronalaženje po ključu. Koristi listu ili torku kada su vrednosti jednostavno uređeni niz.
  • Biranje samo sintakse koju već znašNemoj uvek koristiti listu samo zato što ti je poznata. Pođi od problema i izaberi ponašanje koje tvoji podaci zahtevaju.

Python radni prostor

Učitavanje Python okruženja…

Pre nego što pokreneš kod, predvidi koju osobinu svaka kolekcija pokazuje i šta će svaki rezultat prikazati. Zatim promeni jedan zahtev i odluči koja kolekcija bi mu bolje odgovarala.

choosing_the_right_collection.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.

visitors = ["Ana", "Marko", "Ana"]
unique_visitors = set(visitors)

print(len(visitors))
print(len(unique_visitors))
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.