Ale*_*lex -1 python properties reference callback
如何在Python中推迟属性访问?
我们假设我们有:
def foo():
...
class Bar:
...
bar = Bar()
Run Code Online (Sandbox Code Playgroud)
是否可以实现Bar以便bar
访问任何时间,foo()
将提供回调返回的值?
bar
name已存在于上下文中.这就是为什么它的访问语义应该被保留(它不能是一个可调用的,转换成一个类的属性,使用SomeClass.bar
而不是bar
也行不通).我需要按原样保留所有内容,但是更改程序以便通过bar
引用即时生成的数据foo()
.
UPD:感谢所有人的回答,从而在Python中做这类事情似乎是不可能的.我会找到一个解决方法.
我想你想把一些属性"data"链接到foo:
class Bar:
data = property(lambda self: foo())
bar = Bar()
bar.data # calls foo()
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
368 次 |
最近记录: |