Advertisement
pacho_the_python

Untitled

Dec 19th, 2022
768
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.73 KB | None | 0 0
  1. from abc import ABC, abstractmethod
  2.  
  3.  
  4. class Musician(ABC):
  5.     def __init__(self, name: str, age: int):
  6.         self.name = name
  7.         self.age = age
  8.         self.skills = []
  9.  
  10.     @property
  11.     def name(self):
  12.         return self.__name
  13.  
  14.     @name.setter
  15.     def name(self, value):
  16.         if value.strip() == "":
  17.             raise ValueError("Musician name cannot be empty!")
  18.         self.__name = value
  19.  
  20.     @property
  21.     def age(self):
  22.         return self.__age
  23.  
  24.     @age.setter
  25.     def age(self, value):
  26.         if value < 16:
  27.             raise ValueError("Musicians should be at least 16 years old!")
  28.         self.__age = value
  29.  
  30.     @abstractmethod
  31.     def learn_new_skill(self, new_skill: str):
  32.         pass
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement