前言 请看下面代码 def multipliers(): return [lambda x : i*x for i in range(4)] print ([m(2) for m in multipliers()] ) """ [6, 6, 6, 6] """ 为什么输出结果为[6, 6, 6, 6],这段代码相当于 def multipliers(): funcs = [] for i in range(4): def bar(x): retu
不同函数调用方式对应不同的绑定次数: import profile class A: def f(self): pass def foo(): a = A() for i in range(100000): a.f() if __name__ == '__main__': profile.run("foo()") import profile class A: def f(self): pass def foo(): a = A() func = a.f for i in range(