Python属性如何工作?
发布于 2021-01-29 15:08:37
我已经成功地使用了Python属性,但看不到它们如何工作。如果我取消引用类之外的属性,我只会得到一个类型的对象property
:
@property
def hello(): return "Hello, world!"
hello # <property object at 0x9870a8>
但是,如果我将一个属性放在一个类中,则行为会大不相同:
class Foo(object):
@property
def hello(self): return "Hello, world!"
Foo().hello # 'Hello, world!'
我注意到未绑定Foo.hello
仍然是property
对象,因此类实例化必须在做魔术,但是那是什么魔术呢?
关注者
0
被浏览
48
1 个回答