eIn Python, un obiect este o instanta a unei clase, care actioneaza ca un model pentru crearea de obiecte. Fiecare obiect contine date(variabile) si metode pentru a opera cu acele date. Python este un limbaj de programare orientat pe obiecte, ceea ce inseamna ca se concentreaza mai mult pe obiecete si pe interactiunie lui. Ca sa intelegeti mai bine acest concept de obiecte o sa facem o asociere. Sa luam de exemplu un joc in care construiesti orase. Sa presupunem ca aspectul de baza este clasa care contine toate cladirile, resurse etc. Pe baza acestei descrieri facem un oras. Acest oras este un obiect in Python.

Cum facem un obiect?

Pentru a face un obiect dintr-o clasa, folosim o metoda speciala numita constructorul definita ca __init__(), pentru a initializa atributele obiectului. Exemplu:

class Car:
    def __init__(self, model, price):
        self.model = model
        self.price = price

Audi = Car("R8", 100000)
print(Audi.model) 
print(Audi.price)

In consola o sa vedem:

R8
100000

Cum accesam un membru al unei clase?

In Python putem accesa si datele si metodele a unei clase folosind un obiect. Variabilele sunt unice pentru fiecare obiect, in timp ce metodele definesc cum "se comporta" un obiect. Haideti sa vedem un exemplu:

class Car:
    def __init__(self, model):
        self.model = model

    def setprice(self, price):
        self.price = price

    def getprice(self):
        return self.price

Audi = Car("R8")
Audi.setprice(1000000)
print(Audi.getprice())

In consola o sa vedem:

1000000

Exemplul 2:

class Car:
    vehicle = 'Car'

    def __init__(self, model, price):
        self.model = model
        self.price = price

Audi = Car("R8", 100000)
BMW = Car("I8", 10000000)

print(Audi.model, Audi.price)
print(BMW.model, BMW.price)

In consola o sa vedem:

R8 100000
I8 10000000

Acum probabil ca va intrebati de unde vine acel "self". In python acel "self" reprezinta starea curenta a clasei. Este folosit pentru a accesa si modifica atributele si metodele proprii ale obiectului. Prin utilizarea self, fiecare obiect isi poate mentine separat starea, asigurandu-se ca operatiile sunt facute asupra instantei corecte. Exemplu:

class Test:
    def __init__(self, a, b):
        self.country = a
        self.capital = b

    def fun(self):
        print("Capital of " + self.country + " is " + self.capital)

x = Test("India", "Delhi")
x.fun()

In consola o sa vedem:

Capital of India is Delhi

Cum stergem un obiect?

Pentru a sterge obiecte, variabile sau proprieteati de obiecte trebuie sa folosim "del". Asta sterge referinta obiectului si lasa Pythonul sa ii ia memoria pe care obiectul o folosea. Exemplu:

class Car:
    def __init__(self, brand, model):
        self.brand = brand
        self.model = model
        
Audi = Car("Audi", "A6") 
del Audi
print(Audi.brand)

In consola o sa vedem:

Hangup (SIGHUP)
Traceback (most recent call last):
File "/home/guest/sandbox/Solution.py", line 10, in <module>
print(Audi.brand)
^^^^
NameError: name 'Audi' is not defined

Last modified: Monday, 28 July 2025, 12:27 PM