Discuss / Python / 写点自己对这个装饰函数的理解

写点自己对这个装饰函数的理解

Topic source

宁康NK

#1 Created at ... [Delete] [Delete and Lock User]

首先作者讲的很明白,非常感谢。

我的理解就是,如果你使用set和get函数的话,那么当你外部设置和调用时候,就会比较麻烦,麻烦在哪呢?就是你要设置的时候,必须写set_birth,要调用的话必须写get_birth,这就增加了我们在外部写代码时需要额外的注意这些。

为了简化这些,我们能不能用birth既能起到设置,又能起到调用的作用呢?既然两个方面都要起作用,那么在class类中写这两个函数时不就是重名了吗?如果我们能解决函数名重名的问题就可以了,所以增加了这个装饰@property和@score.setter,有了装饰,即使重名了,系统也能区分一个是接受的,一个是返回的。

这样我们就能用一个变量即起到赋值作用,也可以用来调用了。


  • 1

Reply