Junior — Middle
Vai Python var apvienot vai saskaitīt divas klases, izveidojot jaunu objektu, kas apvieno to īpašības?
sobes.tech AI
Atbilde no AI
Jā, Python ir iespējams izveidot jaunu objektu, kas apvieno divu klases īpašības, izmantojot daudzmantošanu vai dinamisku jaunas klases izveidi.
Piemērs ar daudzmantošanu:
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
Tāpat var izmantot type funkciju, lai dinamiski izveidotu klasi, kas apvieno īpašības:
C = type('C', (A, B), {})
obj = C()
Tādējādi jaunais objekts saturēs abu klases īpašības.