這篇文章主要介紹了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屬性
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。