码迷,mamicode.com
首页 > 编程语言 > 详细

Python之路-装饰器

时间:2017-07-29 00:55:00      阅读:164      评论:0      收藏:0      [点我收藏+]

标签:关系   作用   .com   image   源代码   包含   别名   alt   pytho   

一.装饰器前置知识要点

      1.名称空间

         存放名字与变量绑定关系的地方

         名称空间的分类:

          内置名称空间:Python解释器启动时,存放自带的名字的地方。(比如内置函数)

          全局名称空间:在执行文件时,文件级别名字存放的地方

           局部名称空间:在执行文件过程中,如果调用函数,用来存放函数内定名称的地方,调用时生效,调用结束后失效

           加载顺序:内置--------》全局----------》局部

           查找顺序:局部--------》全局----------》内置

       2.作用域

          作用域:作用的范围

           (1).全局作用域(globals())

                  全局存活,全局有效

            (2).局部作用域(locals())

                   临时存活,局部有效

            注意点:1.作用域关系,函数定义时已经确定,与函数调用位置无关,在调用函数是回到原来定义函数

                              的位置去找作用域关系。

       3.闭包函数

          定义:定义在内部的函数,包含对外部作用域的引用,而不是对全局作用域的引用,该函数就是闭包函数

          技术分享

二.装饰器  

     装饰器目的:遵循原则的前提下,为其他函数添加新功能

     装饰器遵循的原则:1.不修改被装饰对象的源代码 2.不修改被调用对象的调用方式

     无参装饰器例:

     技术分享

       有参函数例:

       技术分享

 

        

                    

Python之路-装饰器

标签:关系   作用   .com   image   源代码   包含   别名   alt   pytho   

原文地址:http://www.cnblogs.com/wchunc/p/7237014.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!