Sobes.tech
Junior — Middle

Python-da iki sinifi birləşdirmək və ya toplamaq mümkündürmü, onların xüsusiyyətlərini birləşdirən yeni obyekt yaradaraq?

sobes.tech Süni İntellekt

AI-dan cavab

Bəli, Python-da iki sinfinin xüsusiyyətlərini birləşdirən yeni obyekt yaratmaq mümkündür; çoxlu irs və ya dinamik olaraq yeni sinf yaratmaq yolu ilə.

Çoxlu irs nümunəsi:

class A:
    def __init__(self):
        self.a = 1

class B:
    def __init__(self):
        self.b = 2

class C(A, B):
    def __init__(self):
        A.__init__(self)
        B.__init__(self)

obj = C()
print(obj.a)  # 1
print(obj.b)  # 2

Həmçinin, type funksiyasını istifadə edərək xüsusiyyətləri birləşdirən dinamik sinif yaratmaq mümkündür:

C = type('C', (A, B), {})
obj = C()

Beləliklə, yeni obyekt hər iki sinfin xüsusiyyətlərini əhatə edəcək.