Реалізація логіки для атрибутів
Клас Player, який ви створили раніше, — гарний початок, але одна з ключових переваг атрибутів рівня класу — це можливість обмежувати верхні й/або нижні межі даних.
У цій вправі ви зміните означення класу Player, щоб заборонити значенню position перевищувати значення атрибута рівня класу MAX_POSITION.
Ця вправа є частиною курсу
Вступ до обʼєктно-орієнтованого програмування в Python
Інструкції до вправи
- Оголосіть конструктор
__init__()з двома аргументами:selfіposition. - Усередині конструктора перевірте, чи
positionменше або дорівнює атрибуту рівня класуMAX_POSITION; якщо так, присвойтеself.positionзначенняposition. - Якщо
positionбільше за атрибут рівня класуMAX_POSITION, присвойте його атрибуту класу.MAX_POSITION. - Створіть об'єкт
Playerpз позицією6і виведіть йогоMAX_POSITION.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
class Player:
MAX_POSITION = 10
# Define a constructor
____ ____(____, ____):
# Check if position is less than the class-level attribute value
if ____ <= ____.____:
____.____ = ____
# If not, set equal to the class-level attribute
else:
____.____ = ____.____
# Create a Player object, p, and print its MAX_POSITITON
p = ____(____)
print(____.____)