Python零基础学习笔记(二十五)—— 装饰器
'''
概念:是一个闭包,把一个函数当作参数返回一个替代版的函数
本质上是一个返回函数的函数
'''
#简单的装饰器
def func1():
print("My name is jjking.")
def func2():
print("******************")
func1()
func2()
def func3(func):
def inner():
print("******************")
func()
return inner
#f是func1的加强版本
f = func3(func1)
f()
def outer(func):
def inner(age):
if age < 0:
age = 0
func(age)
return inner
#使用@符号将装饰器应用到函数
#python2.4支持使用@符号
@outer
def say(age):
print("My age is %d"% (age))
#say = outer(say)
say(-12)
def outer(func):
def inner(*args, **kwargs):
#添加修改的功能
print("&&&&&&&&")
func(*args, **kwargs)
return inner
@outer
def say(name, age):
print("My name is %s, I am %d years old."%(name, age))
say("jjking", 23)

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
-
上一篇
JAVA学习day10
1、继承继承的定义格式和使用格式:class 子类 extends 父类 {} 2、子类在继承父类的时候,会自动拥有父类的成员接下来通过一个案例来学习子类是如何继承父类的,如下所示。Example01.java/* 定义员工类Employee*/ class Employee { String name; // 定义name属性 // 定义员工的工作方法 public void work() { System.out.println("尽心尽力地工作"); } } /* 定义研发部员工类Developer 继承 员工类Employee*/ class Developer extends Employee { // 定义一个打印name的方法 public void printName() { System.out.println("name=" + name); } } /* 定义测试类*/ public class Example01 { public static void main(String[] args) { Developer d = new Developer(); /...
-
下一篇
Python零基础学习笔记(二十六)—— 变量的作用域
作用域:变量可以使用的范围 程序的变量并不是所有位置都能使用的,访问的权限决定于变量在哪里赋值的 作用域:局部作用域全局作用域内建作用域
相关文章
文章评论
共有0条评论来说两句吧...