为什么是Function不是Method?
这么写和用@static method有什么区别呢?
class A: def __init__(self): self.a = lambda:'A' @staticmethod def b(): return 'B'
想明白了(大概。。吧)。。lambda相当于函数内的函数,成了闭包:
class B: def __init__(self): def a(): return 'A' self.a = a b = B() b.a # => Out[10]: <function __main__.B.__init__.<locals>.a>