, return f.v f, , . 1 , :
>>> dis.dis(l[0])
3 0 LOAD_GLOBAL 0 (f)
3 LOAD_ATTR 1 (v)
6 RETURN_VALUE
, l, f , :
>>> l
[<function f at 0x02594170>, <function f at 0x02594130>]
>>> f
<function f at 0x02594130>
, l[0](), f, , 1. f, f = l[0], f .
, , - , , . - :
class MyFunction:
def __init__(self, v):
self.v = v
def __call__(self):
return self.v
l = [MyFunction(i) for i in range(2)]
l[0]() # 0
l[1]() # 1
, .
1: f, , ?
, self, :
def my_method(self):
return self.value
self - . Python , value. , , self. , :
a.value = 1
a.my_method()
self a.
, :
def f():
return f.v
Python , f. , . .
, f.v = i, v f, , .