Junior — Middle
Կարո՞ղ է Python-ում երկու դասերը միացնել կամ գումարել՝ ստեղծելով նոր օբյեկտ, որը միավորում է նրանց հատկությունները։
sobes.tech AI
Պատասխան AI-ից
Այո, Python-ում հնարավոր է ստեղծել նոր օբյեկտ, որը միավորում է երկու դասերի հատկությունները, օգտագործելով բազմաբնույթ ժառանգություն կամ դինամիկորեն նոր դաս ստեղծելու միջոցով:
Բազմաբնույթ ժառանգության օրինակ:
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
Նույնպես, կարող եք օգտագործել type ֆունկցիան՝ դինամիկորեն ստեղծելու դաս, որը միավորում է հատկությունները:
C = type('C', (A, B), {})
obj = C()
Այսպիսով, նոր օբյեկտը կպահպանի երկու դասերի հատկությունները։