我可以这样做:
def f(n):
f.data = 3.14
return n ** 2
f(10), f.data
缺货[8]:
(100, 3.14)
我的理解是,在f.data
中,名称f
绑定到外部作用域中的函数对象。它看起来有点尴尬,但self
不起作用:
def f(n):
self.data = 3.14
return n ** 2
f(10), f.data
---------------------------------------------------------------------------
NameError: global name 'self' is not defined
是否有相当于self
来从内部引用函数属性?