, 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
, , .