神奇的动态语言2
在python中,函数也是first class object,所以,函数是可以有自己的属性和方法的。例如下面的这个简单例子:
def foo():
if hasattr(foo, "a"):
foo.a += 1
else:
foo.a = 1
print foo.a
在IronPython中,每次执行foo()方法,输出的结果都会不同
>>> from foo import foo
>>> foo()
1
>>> foo()
2
>>> foo()
3
>>>
def foo():
if hasattr(foo, "a"):
foo.a += 1
else:
foo.a = 1
print foo.a
在IronPython中,每次执行foo()方法,输出的结果都会不同
>>> from foo import foo
>>> foo()
1
>>> foo()
2
>>> foo()
3
>>>
posted on 2006-12-27 11:08 iceboundrock 阅读(219) 评论(0) 编辑 收藏 举报