python里面也可以出现一个类,将属性和对象进行封装,这就引出了python面向对象的思想。
封装:
class openclass(): #setter and getter method def _int_ setX(self,x): self.x=x def getX(self): return self.x def setY(self,y): self.y=y def getY(self): return self.y test1=test2 def test(self): print "test" # initialize object open = openclass() print open.getX()
以上是一个简单的类,初始化变量,定义setter getter方法,以及实例化对象的调用。
在类中,方法的定义也可以在外面像这样:
def test1(self): print "test1" class openclass(): test=test1 open = openclass() open.test()
继承:
引用简明 Python 教程一个小例子说明:
#!/usr/bin/python # -*- coding:gb2312 -*- # Filename: inherit.py class Person: def __init__(self,name,age): #定义SchoolMember类的2个参数 self.name = name self.age = age def tell(self): print 'Name:"%s",Age:"%s"' % (self.name,self.age), #别小瞧了末尾的这个逗号 class Teacher(Person): def __init__(self,name,age,salary): #Teacher类的3个属性 Person.__init__(self,name,age) #从SchoolMember继承2个属性,终于知道原来这就是继承:) self.salary = salary #别忘了定义其他参数 def tell(self): Person.tell(self) print 'Salary:"%d"' % self.salary class Student(Person): def __init__(self,name,age,marks): Person.__init__(self,name,age) self.marks= marks def tell(self): Person.tell(self) print 'Marks:"%d"' % self.marks, t = Teacher('Mr.Swaroop',26,30000) # 类实例的三个属性 s = Student('Song',22,77) members = [t,s] for member in members: #喜欢python当然也少不了对for...in的青睐 member.tell()