Advertisement
pacho_the_python

Untitled

Jul 20th, 2022
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.08 KB | None | 0 0
  1. from abc import ABC, abstractmethod
  2.  
  3.  
  4. from project.validator import Validator
  5.  
  6.  
  7. class Movie(ABC):
  8.     def __init__(self, title: str, year: int, owner, age_restriction: int):
  9.         self.title = title
  10.         self.year = year
  11.         self.owner = owner
  12.         self.age_restriction = age_restriction
  13.         self.likes = 0
  14.  
  15.     @property
  16.     def title(self):
  17.         return self.__title
  18.  
  19.     @title.setter
  20.     def title(self, value):
  21.         Validator.get_proper_string(value, "The title cannot be empty string!")
  22.         self.__title = value
  23.  
  24.     @property
  25.     def year(self):
  26.         return self.__year
  27.  
  28.     @year.setter
  29.     def year(self, value):
  30.         Validator.get_proper_year(value, "Movies weren't made before 1888!")
  31.         self.__year = value
  32.  
  33.     @property
  34.     def owner(self):
  35.         return self.__owner
  36.  
  37.     @owner.setter
  38.     def owner(self, value):
  39.         if not value.__class__.__name__ == "User":
  40.             raise "The owner must be an object of type User!"
  41.         self.__owner = value
  42.  
  43.     @abstractmethod
  44.     def details(self):
  45.         pass
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement