亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

python 閉包和裝飾器的使用

標簽:
Python
函数也是对象

函数本身也是一个对象 , 可以被其它的变量进行引用 , 作为对象返回

图片描述

闭包

在函数里面再定义一个函数, 里面的函数用到外面函数的变量, 这个函数及用到的变量称为闭包

图片描述

里层函数可以轻松访问外层函数的变量

图片描述

当函数重名时

函数本质上也是一个对象,可以被任意指向, 如果有多处指向,后面指向的总是覆盖前面指向的

图片描述

开放封闭原则

开放 : 对外可以扩展开发
封闭: 已实现的代码不修改

装饰器的本质

装饰器实现了开放封闭的代码原则, 原有的代码不发生修改又能增加新的功能 ,从本质上讲是将函数作为对象进行参数传递,并且作为对象进行返回

图片描述

使用语法糖来简化代码

使用@装修函数 的语法装饰函数 , 原函数的代码 和调用不发生变化
图片描述

多次装饰

如下, 第一次装饰时函数并不没有执行,到第二次装饰里将第一次添加的功能添加将执行,所以被装饰函数执行了一次,简化言之:第二次装饰时 inner = func

图片描述

不定参数的装饰器

图片描述

带有返回值的装饰器

图片描述

装饰器带有参数

带有参数的装饰并不会直接传入原有的函数对象,而是返回一个被包裹的装饰器
图片描述

點擊查看更多內容
2人點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消