Mikuláš je tu! Získaj 90 % extra kreditov ZADARMO s promo kódom CERTIK90 pri nákupe od 1 199 kreditov. Len do nedele 7. 12. 2025! Zisti viac:
NOVINKA: Najžiadanejšie rekvalifikačné kurzy teraz s 50% zľavou + kurz AI ZADARMO. Nečakaj, táto ponuka dlho nevydrží! Zisti viac:

Diskusia – 6. diel - Zapuzdrenie atribútov podrobne v Pythone

Späť

Upozorňujeme, že diskusie pod našimi online kurzami sú nemoderované a primárne slúžia na získavanie spätnej väzby pre budúce vylepšenie kurzov. Pre študentov našich rekvalifikačných kurzov ponúkame možnosť priameho kontaktu s lektormi a študijným referentom pre osobné konzultácie a podporu v rámci ich štúdia. Toto je exkluzívna služba, ktorá zaisťuje kvalitnú a cielenú pomoc v prípade akýchkoľvek otázok alebo projektov.

Komentáre
Posledné komentáre sú na spodnej časti poslednej stránky.
Avatar
Barbora Zdvihalová:27. júna 19:01

Ahoj, muzete mi prosim vysvetlit, kdy se pouziva

self.znacka = znacka
self.model = model

a kdy

self.znacka = None
self.model = None

Na cem to zavisi, jaky je rozdil a jake jsou dalsi moznosti? Dekuji moc.

Avatar
DarkCoder
Člen
Avatar
Odpovedá na Barbora Zdvihalová
DarkCoder:27. júna 20:04

Kdy se používá self.znacka = znacka

Tohle používáš, když ti někdo (uživatel, volající kód) předává hodnoty při vytváření objektu:

class Auto:
    def __init__(self, znacka, model):
        self.znacka = znacka
        self.model = model

A pak použiješ:

a = Auto("Škoda", "Octavia")

self.znacka bude "Škoda", self.model bude "Octavia" — hodnoty si přebírá z argumentů

Kdy se používá self.znacka = None

Tohle používáš, když zatím žádnou hodnotu nemáš, ale chceš si připravit atribut, aby existoval.

class Auto:
    def __init__(self):
        self.znacka = None
        self.model = None

Použití:

a = Auto()
a.znacka = "Toyota"
a.model = "Corolla"

Hodnoty přiřadíš později, ne při vytvoření objektu.

Co dalšího?

Výchozí hodnoty v konstruktoru:

def __init__(self, znacka=None, model=None):
    self.znacka = znacka
    self.model = model

Teď můžeš vytvořit objekt s nebo bez údajů:

a = Auto()                           # znacka = None, model = None
b = Auto("Ford", "Focus")            # znacka = "Ford", model = "Focus"

Použití None je běžné, pokud:

  • hodnoty zatím nemáš (např. načítáš z databáze později),
  • chceš označit "prázdný" nebo "nedefinovaný" stav.
Odpovedať
"I ta nejlepší poučka postrádá na významu, není-li patřičně předána." - DarkCoder
Avatar
Daniel Sekerák:27. októbra 16:06

U mňa je potrebne si to viac krat prečítať a skušať to na prikladoch aby som tomu pochopil, zatial je to narocne pochopit z textu az kým na to nemam ulohu pri koterj to bude davat zmysel :)

Posledné komentáre sú na spodnej časti poslednej stránky.
Robíme čo je v našich silách, aby bola tunajšia diskusia čo najkvalitnejšia. Preto do nej tiež môžu prispievať len registrovaní členovia. Pre zapojenie sa do diskusie sa zaloguj. Ak ešte nemáš účet, zaregistruj sa, je to zadarmo.

Zobrazené 3 správy z 13.