python創建一個類-ag真人国际官网
ⅰ 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中如何定義類
一、類定義:
class <類名>:
<語句>
類實例化後,可以使用其屬性,實際上,創建一個類之後,可以通過類名訪問其屬性
如果直接使用類名修改其屬性,那麼將直接影響到已經實例化的對象
類的私有屬性:
__private_attrs兩個下劃線開頭,聲明該屬性為私有,不能在類地外部被使用或直接訪問
在類內部的方法中使用時self.__private_attrs
類的方法
在類地內部,使用def關鍵字可以為類定義一個方法,與一般函數定義不同,類方法必須包含參數self,且為第一個參數
私有的類方法
__private_method兩個下劃線開頭,聲明該方法為私有方法,不能在類地外部調用
在類的內部調用slef.__private_methods
類的專有方法:
__init__構造函數,在生成對象時調用
__del__析構函數,釋放對象時使用
__repr__列印,轉換
__setitem__按照索引賦值
__getitem__按照索引獲取值
__len__獲得長度
__cmp__比較運算
__call__函數調用
__add__加運算
__sub__減運算
__mul__乘運算
__div__除運算
__mod__求余運算
__pow__稱方
示例:
[python]view plain
#類定義
classpeople: