如下面的一個(gè)類:
class OldResistor(object): def __init__(self,ohms): self.ohms = ohms def get_ohms(self): return self.ohms def set_ohms(self, ohms): self._ohms = ohmsa = OldResistor(50e3)PRint ('no set %5r'% a.get_ohms())a.set_ohms(10e3)print ('with set %5r'% a.get_ohms())結(jié)果:
no set 50000.0with set 10000.0init方法在實(shí)例被創(chuàng)建時(shí)初始化,它可以把各種屬性綁定到self,然后self指向被創(chuàng)建的實(shí)例本身(在這里是a)。然后,對象調(diào)用setter可以改變屬性。上面代碼還可以簡化成:
setter還可以配合@property使用,效果和之前一樣: 
新聞熱點(diǎn)
疑難解答