python 类的继承 实例方法.静态方法.类方法的代码解析
时间:2020-10-15 23:16:47|栏目:Python代码|点击: 次
这篇文章主要介绍了python 类的继承 实例方法.静态方法.类方法的代码解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
dt={} class Denglu: def register(self,name,psd): if name.isalnum() and psd.isalnum(): if name not in dt.keys(): dt[name]=psd print('注册成功') else: print('已经存在该用户名') else: print('你输入的账户名称或密码不符合规定') def login(self,name,psd): if len(dt): if name in dt.keys(): if psd==dt[name]: print('登陆成功') else: print('密码错误') else: print('该用户未注册') else: print('未曾有人注册过') def modify(self,name,psd): if name in dt.keys() and psd!=' ': dt[name]=psd print('修改密码成功') else: print('该账户不存在') class main(Denglu): def show(self): opt=input('请输入选项\n' '1――注册\n' '2――登陆\n' '3――修改密码\n' '4――退出系统\n') if opt.isdigit(): opt=int(opt) if 1<=opt<=4: return opt else: return 0 else: return 0 def din(self): while True: t=self.show() if t==1: name=input('[注册]请输入用户名') psd=input('[注册]请输入密码') name=name.strip() psd=psd.strip() self.register(name,psd) elif t==2: name=input('[登陆]请输入用户名') psd=input('[登陆]请输入密码') name=name.strip() psd=psd.strip() self.login(name,psd) elif t==3: name=input('[修改]请输入用户名') psd=input('[修改]请输入密码') name=name.strip() psd=psd.strip() self.modify(name,psd) elif t==4: print('退出系统') break else: print('亲 按要求输入哦!') temp=main() temp.din()
对于面向对象编程 类继承来说这是一个很经典的例子,原谅我直接上代码了哈。。然后是关于静态方法。类方法。的调用
对于各种方法的解释不做缀释。。
class TaSt: age = 88 # 类属性 def __init__(self, name): self.name = name # 实例属性 def show(self, b): print(u'实例方法', b) @staticmethod def show2(a): print(u'静态方法',a) @classmethod def add(cls, a): # 第一个参数必须是类本身 print(u'类方法', a) t1 = TaSt('55') # 实例化一个对象 t1.show('调用实例方法') # 调用实例方法 TaSt.show(t1, '类调用实例方法。传参是实例化后对象') # 类调用实例方法。传参是实例化后对象 t1.show2('实例调用静态方法') # 实例调用静态方法 TaSt.show2('类调用静态方法') # 类调用静态方法 t1.add('类方法实例化后调用') # 类方法实例化后调用 TaSt.add('类方法直接使用类名调用') # 类方法直接使用类名调用 print(t1.name, '调用实例属性') # 类调不了 print(t1.age, '调用lei属性') print(TaSt.age, '调用lei属性') 输出结果:: 》》实例方法 调用实例方法 》》实例方法 类调用实例方法。传参是实例化后对象 》》静态方法 实例调用静态方法 》》静态方法 类调用静态方法 》》类方法 类方法实例化后调用 》》类方法 类方法直接使用类名调用 》》55 调用实例属性 》》88 调用lei属性 》》88 调用lei属性