Класс как объект в ООП в Python
Раз класс - объект, его можно хранить в переменной и передавать в функции так же, как число или строку.
Давайте сделаем функцию, которая принимает класс и создает из него объект:
class User:
def __init__(self, name):
self.name = name
def make(cls, name):
return cls(name)
Передадим в функцию класс User:
user = make(User, 'john')
print(user.name) # выведет 'john'
Класс можно записать в переменную и вызвать через нее:
Cls = User
user = Cls('eric')
print(user.name) # выведет 'eric'
Сделайте класс Employee
с конструктором, принимающим
имя и зарплату.
Напишите функцию, которая первым
параметром принимает класс,
остальные - аргументы для
конструктора, и возвращает объект.
Создайте Employee через
эту функцию.