Додавання альтернативного конструктора
Методи класу — чудовий спосіб надати альтернативний шлях створення об'єкта з класу, наприклад із файлу або шляхом приймання інших вхідних даних і виконання дій під час створення, щоб повернути потрібні атрибути.
У цій вправі ви працюватимете з класом Person. Конструктор очікує ім'я та вік під час ініціалізації. Ви додасте метод класу, який дає змогу ініціалізувати об'єкт за іменем і роком народження, після чого метод обчислить вік на основі року народження.
Ця вправа є частиною курсу
Вступ до обʼєктно-орієнтованого програмування в Python
Інструкції до вправи
- Додайте декоратор методу класу.
- Оголосіть метод класу
from_birth_year(), який приймає три аргументи: умовне слово як спеціальний аргумент-посилання на клас,nameтаbirth_year. - У тілі методу створіть змінну
age, обчисливши різницю між атрибутом класуCURRENT_YEARіbirth_year. - Поверніть атрибути
nameтаageкласу.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
class Person:
CURRENT_YEAR = 2024
def __init__(self, name, age):
self.name = name
self.age = age
# Add a class method decorator
____
# Define the from_birth_year method
def ____(____, ____, ____):
# Create age
age = ____.____ - ____
# Return the name and age
return ____(____, ____)
bob = Person.from_birth_year("Bob", 1990)