Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Color:
- def __init__(self, color, name, opacity=1):
- if not self.__check_color(color):
- raise ValueError("Переданный цвет имеет неверный формат")
- self.__color = color
- self.name = name
- if not self.__opacity_check(opacity):
- raise ValueError("Переданная прозрачность имееет не верный формат")
- self.__opacity = opacity
- @staticmethod
- def __check_color(color):
- if isinstance(color, tuple) and len(color) == 3:
- for value in color:
- if not isinstance(value, int) or value > 255 or value < 0:
- return False
- return True
- return False
- def get_color(self):
- return self.__color
- def set_color(self, new_color):
- if not self.__check_color(new_color):
- raise ValueError("Переданный цвет имеет неверный формат")
- self.__color = new_color
- @staticmethod
- def __opacity_check(shade):
- if isinstance(shade, (float, int)):
- if 0 <= shade <= 1:
- return True
- return False
- @property
- def opacity(self):
- return self.__opacity
- @opacity.setter
- def opacity(self, new_shade):
- if not self.__opacity_check(new_shade):
- raise ValueError("Переданный прозрачность имеет неверный формат")
- self.__opacity = new_shade
- # def get_opacity(self):
- # return self.__opacity
- #
- # def set_opacity(self, new_shade):
- # if not self.__opacity_check(new_shade):
- # raise ValueError("Переданный прозрачность имеет неверный формат")
- # self.__opacity = new_shade
- #
- # opacity = property(get_opacity, set_opacity)
- color_1 = Color((23, 23, 232), "Красный")
- print(color_1.name)
- print(color_1.opacity)
- color_1.opacity = 0.1
- print(color_1.opacity)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement