self的应用
class Vehicle():
def setName(self,name):
self.name=name
def read(self):
print('我叫%s' % self.name)
a=Vehicle()
a.setName('zhang')
b=Vehicle()
b.setName('liu')
a.read()
b.read()
私有化
class Vechicle():
__brand='品牌'
__price=0.0
def setBrand(self,brand):
self.__brand=brand
def getBrand(self):
return self.__brand
def setPrice(self,price):
self.__price=price
def getPrice(self):
return self.__price
p=Vechicle()
print(p.getBrand())
print(p._Vechicle__brand)
构造方法
class Vechicle():
__brand='品牌'
__price=0.0
def __init__(self,brand,price):
self.__brand=brand
self.__price=price
def setBrand(self,brand):
self.__brand=brand
def getBrand(self):
return self.__brand
def setPrice(self,price):
self.__price=price
def getPrice(self):
return self.__price
def refuel(self):
print('%s品牌的汽车正在加油%f'%(self.__brand,self.__price))
p=Vechicle('宝马',13.5)
p.refuel()
非私有变量也是同理如下:
class Vechicle():
brand='品牌'
price=0.0
def __init__(self,brand,price):
self.brand=brand
self.price=price
def refuel(self):
print('%s品牌的汽车正在加油%0.1f'%(self.brand,self.price))
p=Vechicle('宝马',13.5)
p.refuel()
项目 | Value |
---|
hasattr(对象名,属性名) | 用来判断类中有没有这个属性 |
getattr( ,,) | 第一个参数是类的对象 第二个参数是类的属性 第三个参数是没有这个属性输出的语句 作用:用来返回类中属性的值,如果该类没有该属性则返回第三个参数值 |
setattr(c1,‘y’,123) | 第一个参数是类的对象 第二个设置该类的新属性 第三个参数是新属性的值 一般都是以三个参数出现的,毕竟python没有默认值 |