Sobes.tech
Junior — Middle

Python'da ikki sinfni birlashtirish yoki qo'shish mumkinmi, ularning xususiyatlarini birlashtiradigan yangi obyekt yaratish orqali?

sobes.tech AI

AIdan javob

Ha, Python'da ikki sinfning xususiyatlarini birlashtiradigan yangi obyekt yaratish mumkin, ko'p meros olish yoki dinamik tarzda yangi sinf yaratish orqali.

Ko'p meros olish bilan misol:

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

Shuningdek, type funksiyasidan foydalanib, xususiyatlarni birlashtiradigan dinamik sinf yaratish mumkin:

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

Shu tarzda, yangi obyekt ikkala sinfning xususiyatlarini o'z ichiga oladi.