首页 > 代码库 > Python-类
Python-类
类的初始化函数 __init__,类似于C++中的构造函数
类的中的变量分为【对象变量】和【类变量】
【对象变量】用self引用,self类似于C++中的this指针,类中除了静态函数之外,所有函数的第一个参数都是self,要显示写出(这一点与C++不同)
【类变量】类似于C++中的静态变量,引用方法是【类名.变量名】
静态函数需要用staticmathod声明
注意,不要使用__del__,它和C++中的析构函数还是有区别的,不稳定,容易出错。
#!/usr/bin/pythonclass Robot: RobotNum=0 def __init__(self,name): self.name = name Robot.RobotNum+=1 def tell(self): print ‘My name is‘,self.name, if(Robot.RobotNum==1): print ‘There is 1 robot only‘ else: print ‘There are‘,Robot.RobotNum,‘robots‘ def Num(): print Robot.RobotNum Num = staticmethod(Num)robot1 = Robot(‘caven‘)robot1.tell()robot2 = Robot(‘jill‘)robot2.tell()robot3 = Robot(‘grace‘)robot3.tell()
继承
#!/usr/bin/pythonclass SchoolMember: def __init__(self,pname,page): self.name = pname self.age = page def tell(self): print ‘name:‘,self.name,‘age:‘,self.age,class Teacher(SchoolMember): def __init__(self,pname,page,psalary): SchoolMember.__init__(self,pname,page) self.salary = psalary def tell(self): SchoolMember.tell(self) print ‘salary:‘,self.salaryclass Student(SchoolMember): def __init__(self,pname,page,pmark): SchoolMember.__init__(self,pname,page) self.mark = pmark def tell(self): SchoolMember.tell(self) print ‘mark:‘,self.marklist = [Teacher(‘Bill‘,46,‘$1000‘),Student(‘John‘,23,124)]for member in list: member.tell()
output:
name: Bill age: 46 salary: $1000
name: John age: 23 mark: 124
类的继承方法是:在定义子类时,在类名的后面加上要继承的父类名
子类要显示调用父类的初始化函数
Python-类
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。