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函数