Treci la conținutul principal

Metoda __init__()

Fiecare clasă are o metodă încorporată numită __init__(), iar Python o execută de fiecare dată când clasa este folosită pentru a construi un obiect nou.

Aici este locul în care dai valori proprietăților obiectului sau faci orice altă operație de care noul obiect are nevoie atunci când este creat.

Notă: Apelul la __init__() are loc automat, o dată pentru fiecare obiect nou pe care îl creezi.

Exemplu

O clasă numită Person, a cărei metodă __init__() stochează un nume și o vârstă:

Prompt
Creează o clasă Person folosind init() pentru a atribui name și age, apoi creează un obiect și afișează ambele proprietăți.
Ieșire: program Python complet

De ce să folosim __init__()?

Dacă renunți la __init__(), proprietățile fiecărui obiect trebuie setate manual, una câte una:

Cu __init__(), valorile inițiale sunt puse chiar în momentul creării obiectului, ceea ce este mult mai simplu:

Exemplu

O clasă fără __init__():

Prompt
Creează o clasă Person fără init(), setează manual proprietățile name și age și afișează-le.
Ieșire: program Python complet

Exemplu

Aici __init__() primește valorile inițiale în momentul în care obiectul este creat:

Prompt
Creează o clasă Person cu init() care primește name și age, creează un obiect și afișează-le pe amândouă.
Ieșire: program Python complet

Valori implicite în __init__()

Parametrii metodei __init__() pot avea și valori implicite:

Exemplu

Dă parametrului age o valoare implicită:

Prompt
Creează o clasă Person cu init() în care age are valoarea implicită 18, creează două obiecte și afișează proprietățile lor.
Ieșire: program Python complet

Parametri multipli

Dă metodei __init__() atâția parametri de câți are nevoie clasa ta:

Exemplu

O clasă Person care primește mai mulți parametri:

Prompt
Creează o clasă Person cu init() care primește parametrii name, age, city și country, creează un obiect și afișează toate proprietățile.
Ieșire: program Python complet