Функция type в ООП в Python
Класс с именем User, написанный
обычным способом, Python создает
через функцию type. Тот же
результат можно получить явно.
Функция type принимает имя
класса, кортеж баз и словарь
атрибутов. Давайте создадим класс:
User = type('User', (), {'name': 'john'})
Проверим, что получился настоящий класс:
print(User) # <class 'User'>
print(User.name) # выведет 'john'
Создадим объект этого класса:
user = User()
print(user.name) # выведет 'john'
В словарь можно добавить методы. Для этого пишут обычные функции:
def show(self):
return self.name
User = type('User', (), {'name': 'john', 'show': show})
user = User()
print(user.show()) # выведет 'john'
Через type создайте класс
Employee с атрибутом
name со значением
'john'.
Создайте объект Employee
и выведите его имя.