Python的函数嵌套的使用方法
更新时间:2014年01月24日 15:32:25 作者:
这篇文章主要介绍了Python的函数嵌套的使用方法,有需要的朋友可以参考一下
例子:
复制代码 代码如下:
def re_escape(fn):
def arg_escaped(this, *args):
t = [isinstance(a, VerEx) and a.s or re.escape(str(a)) for a in args]
return fn(this, *t)
return arg_escaped
函数嵌套
python允许在定义函数的时候,其函数体内又包含另外一个函数的完整定义,这就是我们通常所说的嵌套定义。为什么?因为函数是用def语句定义的,凡是其他语句可以出现的地方,def语句同样可以出现。
像这样定义在其他函数内的函数叫做内部函数,内部函数所在的函数叫做外部函数。当然,我们可以多层嵌套,这样的话,除了最外层和最内层的函数之外,其它函数既是外部函数又是内部函数。
使用方法
复制代码 代码如下:
spam = 99
def tester():
def nested():
global spam
print('current=',spam)
spam += 1
return nested
#注意:打印 print 那行的代码调用是tester()()
#而不是tester().nested()
相关文章
Django中使用 Closure Table 储存无限分级数据
对于数据量大的情况(比如用户之间有邀请链,有点三级分销的意思),就要用到 closure table 的结构来进行存储。这篇文章主要介绍了Django中使用 Closure Table 储存无限分级数据,需要的朋友可以参考下2019-06-06python中的class_static的@classmethod的巧妙用法
python中的class_static的@classmethod的使用 classmethod的使用,主要针对的是类而不是对象,在定义类的时候往往会定义一些静态的私有属性,今天通过示例代码看下classmethod的妙用2021-06-06
最新评论