在代码运行期间动态增加功能的方式,称之为“装饰器”(Decorator)。
由于函数也是一个对象,而且函数对象可以赋值给变量,所以通过变量也能调用该函数。
>>> def now():
... print('2015-3-25')
...
>>> f=now
>>> f
<function now at 0x7f84f14fda28>
>>> f()
2015-3-25
函数对象有一个__name__
属性,可以拿到函数的名字
>>> f.__name__
'now'
>>> now.__name__
'now'