蓝鲸python第三题
来源:互联网 发布:淘宝ifashion设置男女 编辑:程序博客网 时间:2024/04/28 08:44
弄明白了python中的嵌套函数(也就是所谓的闭合函数)之后,再想搞懂python装饰器就简单多了。
如果要简单地说,python装饰器不过就是一个针对嵌套函数的语法糖
它的作用就是在函数调用方法不变的情况下,把此函数包装成另一个函数来使用一、首先来大致了解下嵌套函数:
被嵌套与一层函数中的二层函数可以记录上上一层函数作用域中的变量
举例:
- def foo(a):
- def subfoo(b):
- return(b + a)
- return(subfoo)
- f = foo('content') #由于foo返回的是subfoo,所以f是对subfoo的引用
- f('sub_') #因为subfoo记录了foo的参数变量'content',所以返回值为'sub_content'
二、嵌套函数和它的变种(装饰器)
以下两端代码,作用是相同的,前一个是大姑娘,后一个是女扮男装后的大姑娘
- def action(x):
- return(x)
- def action_pro(n):
- def warpper(x):
- return(n(x) * x)
- return(warpper)
- action = action_pro(action) #第一个action为自定义的伪装变量,第二个action为上边定义的action函数
- action(3) #此函数实际为warpper(3),返回值为9
0 0
- 蓝鲸python第三题
- 蓝鲸python第二题个人理解版
- 蓝鲸python第一题个人理解运行版
- 蓝鲸SaaS后台开发工程师(python)
- CodeWars---Python第三题
- Python挑战第三题
- Python挑战第三题
- Leetcode第三题python
- C语言实现哈希链表insert lookup函数 2012年中科蓝鲸笔试题
- 蓝鲸的在Hackthissite上的7到JS题作业
- 蓝鲸服务挂载
- 蓝鲸学习日志~~~
- 天津中科蓝鲸笔试
- 蓝鲸财经新闻记者实战培训
- PyThon第三方库
- python学习第三章
- python challenge 第三关
- 《Python 第三章》字符串
- 如何在MySQL的不指定列名称的前提下插入一整行数据
- [LeetCode28] Implement strStr()
- 神经网络的严冬与复兴之路
- CMake 手册详解(一)
- 5-17 爬动的蠕虫 (15分)
- 蓝鲸python第三题
- HAproxy 配置详解
- hdu1015 Safecracker
- 初步实现网络socket编程
- 树的层次遍历
- 使用jar包XStream解析xml数据
- 简要描述javascript中的作用域链
- JNDI
- leetcode之Roman to Integer