viligen

profile

Mar 4th, 2022
751
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.94 KB | None | 0 0
  1. import re
  2.  
  3.  
  4. class Profile:
  5.     def __init__(self, username: str, password: str):
  6.         self.username = username
  7.         self.password = password
  8.  
  9.     @property
  10.     def username(self):
  11.         return self._username
  12.  
  13.     @username.setter
  14.     def username(self, value):
  15.         if len(value) < 5 or len(value) > 15:
  16.             raise ValueError("The username must be between 5 and 15 characters.")
  17.         self._username = value
  18.  
  19.     @property
  20.     def password(self):
  21.         return self._password
  22.  
  23.     @password.setter
  24.     def password(self, value):
  25.         if len(value) < 8 or not re.findall(r'\d+', value) or not re.findall(r'[A-Z]+', value):
  26.             raise ValueError("The password must be 8 or more characters with at least 1 digit and 1 uppercase letter.")
  27.         self._password = value
  28.  
  29.     def __str__(self):
  30.         return f'You have a profile with username: "{self.username}" and password: {"*" * len(self.password)}'
  31.  
Advertisement
Add Comment
Please, Sign In to add comment