Learning immediately: https://edu.csdn.net/course/play/24797/282191?utm_source=blogtoedu
python does not provide a true hidden mechanism, python class all the members are public by default.
If you need to hide some members, named them to begin with a double underscore. In fact, still be called hidden by adding members "underlined the class name plus" prefix Lai
class Test: def __init__(self, name='admin', passwd='password'): if Test.checkPw(self, passwd) and Test.checkNm(self, name): self.__name = name self.__passwd = passwd else: print('输入无效') exit() def getPw(self): return self.__passwd @property def name(self): return self.__name def setPw(self, passwd): if Test.checkPw(self, passwd): self.__passwd = passwd else: print('password格式不对') exit() @name.setter def name(self, name): if Test.checkNm(self, name): self.__name = name else: print('name格式不对') exit() def checkNm(self, name): if isinstance(name, str) and 4 <= name.__len__() <= 8: return True else: return False def checkPw(self, passwd): if isinstance(passwd, str) and 6 <= passwd.__len__() <= 10: return True else: return False # name = property(fget=getNm, fset=setNm) passwd = property(fget=getPw, fset=setPw) t = Test() inm = input("请输入用户名_____") T.name = # 'Hello' # t.passwd = 'word' = INM t.name IPW = INPUT ( 'Please enter the password _______') t.passwd IPW = Print (t._Test__name, t._Test__passwd) Print (t.name, t.passwd)