Mixins
Сама идея миксинов - подразумевает расширение возможностей объекта или класса (самого же создания экземпляра класса для миксина не предполагается)
class FoodMixins(Person):
food = None
def get_food(self):
if self.food is None:
raise ValueError("Food should be set")
print(f"I like {self.food}")
class Person:
def hello(self):
print("I am Human")
# Первым вставляем миксину для расширения класса
class Student(FoodMixins, Person):
food = "Pizza"
def hello(self):
print("I am a student")
s = Student()
s.hello()
123456789101112131415161718192021
[!info] Когда применяются Mixins Например, когда нам нужно добавить какую-нибудь фичу большому количеству не связных между собой классов
Last updated
Was this helpful?