Sobes.tech
Junior — Middle

Czy można połączyć lub dodać dwie klasy w Pythonie, tworząc nowy obiekt łączący ich właściwości?

sobes.tech AI

Odpowiedź od AI

Tak, w Pythonie można utworzyć nowy obiekt łączący właściwości dwóch klas, używając wielodziedziczenia lub dynamicznego tworzenia nowej klasy.

Przykład z wielodziedziczeniem:

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

Możesz także użyć funkcji type do dynamicznego tworzenia klasy, łączącej właściwości:

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

W ten sposób nowy obiekt będzie zawierał właściwości obu klas.