函数02


名称空间与作用域:内置、全局、局部


定义在开始的都是全局名称,全局作用域。先是找自己——》找全局——》找内置——报错


函数都是先定义,后使用,在定义阶段只检测语法错误,实用阶段检测逻辑错误


函数嵌套:嵌套定义,嵌套调用

函数是第一类对象,函数相当于变量,变量可以干的他都可以干,做参数,传值,等


函数02_第1张图片


闭包:内建函数包含对外部作用域的引用。


装饰器:作用就是为一个对象添加新功能,但是不改变原函数的代码,其基础的语法


@timmer    实质就是将@下面的函数作为一个参数传值给timmer()里面 并把返回值返回给源函数

遇到装饰器的时候 index=timmer(index)

函数02_第2张图片


格式如上,有内建函数的应用。

函数02_第3张图片


传参数的时候要用*args and **kwargs才更方便其他函数灵活调用而不出错


带参数的装饰器的实例子

函数02_第4张图片


函数02_第5张图片


eval() 内建函数,去除字符串里面的引号,

有参函数的装饰器,是在无参函数外面加一个外部函数就可以了,这样形成闭包

你可能感兴趣的:(函数02)