luofeiyu_cu 发表于 2014-08-22 20:53

使用属性修饰符创建描述符

本帖最后由 luofeiyu_cu 于 2014-08-22 21:13 编辑


class Person(object):

    def __init__(self):
      self._name = ''

    @property
    def name(self):
      print "Getting: %s" % self._name
      return self._name

    @name.setter
    def name(self, value):
      print "Setting: %s" % value
      self._name = value.title()

    @name.deleter
    def name(self):
      print ">Deleting: %s" % self._name
      del self._name

这段代码如何理解@name.setter?setter是什么?哪里定义的 ?
property人家可是系统内建函数。name.setter 是怎么来的?没有这样一个函数。
看了半天没有明白

r2007 发表于 2014-08-22 23:34

一种语法糖吧?

luofeiyu_cu 发表于 2014-08-23 20:47

自己琢磨清楚了。@property修饰name的时候,会导致name具有setter ,getter属性。
页: [1]
查看完整版本: 使用属性修饰符创建描述符