创建一个类:
class MyClass:
pass
mc = MyClass()
print (mc) # <__main__.MyClass object at 0x7fb803b466a0>
在类中,可以创建变量和函数:
class MyClass:
name = 'Sam'
def sayHi(self):
print ('Hello %s' % self.name)
mc = MyClass()
print (mc.name)
mc.name = 'Lily'
mc.sayHi()
需要注意的是,类中的函数,第一个参数必须为
self
。
类中可以继承:
class Vehicle:
def __init__(self, speed): # 相当于构造函数
self.speed = speed
def drive(self, distance):
print ('need %f hour(s)' % (distance / self.speed))
class Bike(Vehicle): # 集成自 Vehicle
pass
class Car(Vehicle):
def __init__(self, speed, fuel):
Vehicle.__init__(self, speed)
self.fuel = fuel
def drive(self, distance):
Vehicle.drive(self, distance) # 调用超类方法
print ('need %f fuels' % (distance * self.fuel))
b = Bike(15.0)
c = Car(80.0, 0.012)
b.drive(100.0)
c.drive(100.0)