我在这里有一个简单的类设置。我想要发生的是当我设置类对象Truck的属性“信息”时要打印的“打印消息” 。
当我设置 info 属性时似乎没有发生任何事情我c.info = "Great"
希望它打印“正在设置”
# Classes
class Node(object):
def __init__(self, name, age):
self.name = name
self.age = age
class Truck(Node):
def __init__(self, name="", age=0):
super(Truck, self).__init__(name=name, age=age)
self.info = None
@property
def info(self):
return self.info
@info.setter
def info(self):
print "this is being set"
c = Truck()
c.info = "great"
print c.info
Run Code Online (Sandbox Code Playgroud)
将setter需要采取一个value。此外,将数据存储在其中self._info以避免递归调用self.info().
class Node(object):
def __init__(self, name, age):
self.name = name
self.age = age
class Truck(Node):
def __init__(self, name="", age=0):
super(Truck, self).__init__(name=name, age=age)
self._info = None
@property
def info(self):
return self._info
@info.setter
def info(self, value):
# you likely want to it here
self._info = value
print("this is being set")
c = Truck()
c.info = "great"
print(c.info)
Run Code Online (Sandbox Code Playgroud)
这打印:
this is being set
great
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
798 次 |
| 最近记录: |