python定義類成員
⑴ python定義一個學生類,包括學號、姓名和出生日期三個屬性(數據成員);包括一個用
import datetime
class student:
def __init__(self,Sno,Sname,Sbarthday,Sfaction):
self.Sage = 0
self.Sgarde = '優秀'
self.Sname = Sname
self.Sno = Sno
self.Sbarthday = datetime.datetime.strptime(Sbarthday,"%Y-%m-%d")
self.Sfaction = Sfaction
self.Setage(Sbarthday)
self.SetGarde(Sfaction)
def Setage(self,Sbarthday):
if (datetime.date.today().month - self.Sbarthday.month)>=0:
if (datetime.date.today().day - self.Sbarthday.day)<0 & (datetime.date.today().month - self.Sbarthday.month)==0:
self.Sage = datetime.date.today().year - self.Sbarthday.year -1
else:
self.Sage = datetime.date.today().year - self.Sbarthday.year
else:
self.Sage = datetime.date.today().year - self.Sbarthday.year -1
def SetGarde(self,Sfaction):
if self.Sfaction >= 80:
self.Sgarde = '優秀'
elif self.Sfaction >= 70 & self.Sfaction <80:
self.Sgarde = '良好'
elif self.Sfaction >= 60 & self.Sfaction <70:
self.Sgarde = '及格'
else:
self.Sgarde = '不及格'
text1 = student('2018061','張三','1999-10-27',68)
print("學號:{0} 姓名:{1} 年齡:{2} 分數:{3} 等級:{4}".format(text1.Sno,text1.Sname,text1.Sage,text1.Sfaction,text1.Sgarde))
⑵ python類中成員方法定義時方法名後的圓括弧中必須包含什麼
那個員工成員中方法不定義的不行,方法不同,所以說原話號都必須要填入原來的號,這樣才可以達到正常的一些隨行隨行之。
⑶ Python的類中引用成員變數必須加self嗎
Python的類中引用成員變數必須加self
類(class)初始化之後會得到實例(instance)。 self就是用於代表初始化的到的實例。 明確地寫一個self參數,使得類的方法(method)和普通的函數(function)本質上沒有差異,所有的輸入參數都顯示地傳遞到方法/函數當中。 當然作為類的方法,作用的對.
self是只有在類中才會有的。self在定義類的方法時是必須有的,雖然在調用時不必傳入相應的參數。 但self的名稱並不是一定的,在python中self不是關鍵詞。在初始化函數中可以把self換成任意名字.
⑷ python如何在類外定義成員函數
建議不要定義reload函數,如果定義,建議改下名,因為內奸函數中已有reload函數