基本使用 盛放功能的容器,用功能时直接来调就可以,增强代码的可读性 先定义,后调用 定义函数的三种格式 有参函数,无参函数,空函数(站位) return 返回值 可以返回一个值,可以没有返回值,没有值就返回None return可以返回多个值,返回的类型是个元组 并且可以返回后,可以解压赋值给变量 ...
转载 2021-07-04 23:51:00
255阅读
2评论
1. 多层装饰嵌套def makeBold(func): def wrapper(*args, **kwargs): re
原创 2022-07-08 11:10:03
108阅读
一、函数知识1、函数定义与调用函数的定义形式:def '函数名'(参数1,参数1,参数n):     函数功能体     return  "结果"   #可选 #样例函数 def hello(n):  &
翻译 2017-07-04 17:43:35
3619阅读
一.什么是装饰?实际上装饰就是个函数,这个函数可以为其他函数提供附加的功能。装饰在给其他函数添加功能时,不会修改原函数的源代码,不会修改原函数的调用方式。高阶函数+函数嵌套+闭包 = 装饰1.1什么是高阶函数?1.1.1函数接收的参数,包涵一个函数名。1.1.2 函数的返回值是一个函数名。其实这两个条件都很好满足,下面就是一个高阶函数的例子。def test1():  &nbsp
原创 2017-03-22 19:37:43
1056阅读
OpenHarmony嵌套类对象属性变化:@Observed装饰和@ObjectLink装饰 上文所述的装饰仅能观察到第一层的变化,但是在实际应用开发中,应用会根据开发需要,封装自己的数据模型。对于多层嵌套的情况,比如二维数组,或者数组项class,或者class的属性是class,他们的第二层的属性变化是无法观察到的。这就引出了@Observed/@ObjectLink装饰。 说明: 从
原创 2023-10-12 15:03:47
161阅读
@ObjectLink和@Observed类装饰器用于在涉及嵌套对象或数组的场景中进行双向数据同步: 被@Observed装饰的类,可以被观察到属性的变化; 子组件中@ObjectLink装饰装饰的状态变量用于接收@Observed装饰的类的实例,和父组件中对应的状态变量建立双向数据绑定。这个实例可以是数组中的被@Observed装饰的项,或者是class object中的属性,这个属性同样也需要被@Observed装饰。 @Observed用于嵌套类场景中,观察对象类属性变化,要配合自定义组件使用(示例详见嵌套对象),如果要做数据双/单向同步,需要搭配@ObjectLink或者@Prop使用(示例详见@Prop与@ObjectLink的差异)。
回到装饰上的概念上来,装饰要求接受一个callable对象,并返回一个callable对象(不太严谨,详见后文)。 那么用类来实现也是也可以的。我们可以让类的构造函数__init__()接受一个函数,然后重载__call__()并返回一个函数,也可以达到装饰函数的效果。 基本类装饰 clas
转载 2020-05-24 10:53:00
565阅读
2评论
# Python装饰装饰Python装饰是一种让代码更加优雅和灵活的方式。它可以在不修改原始代码的情况下,为函数或类添加额外的功能。在本文中,我们将详细介绍如何使用装饰装饰类,并提供一些代码示例。 ## 什么是装饰装饰是一个可以接受一个函数或类作为参数,并返回一个新函数或类的函数。它通常用于在不修改原始函数或类的情况下,为其添加额外的功能或修改其行为。 ## 装饰的语
原创 2023-07-15 12:41:48
222阅读
内置的装饰和普通的装饰原理是一样的,只不过返回的不是函数,而是类对象,所以更难理解一些。 @property 在了解这个装饰前,你需要知道在不使用装饰怎么写一个属性。 def getx(self): return self._x def setx(self, value): self._x
转载 2020-05-24 11:03:00
714阅读
2评论
听着装饰貌似是高大上的感觉,其实特别简单,装饰就是一个函数,通过对另外一个函数的包装,使得被包装的函数功能增强,装饰能够实现函数代码重用,也经常被用于插入日志,性能测试,处理事务等。
原创 2015-11-11 17:19:56
361阅读
听着装饰貌似是高大上的感觉,其实特别简单,装饰就是一个函数,通过对另外一个函数的包装,使得被包装的函数功能增强,装饰能够实现函数代码重用,也经常被用于插入日志,性能测试,处理事务等。
原创 2015-11-11 17:21:22
382阅读
#装饰#应用场景:当需为写好的函数添加新功能时,既不让你修改原函数,又不让你修改调用函数的方式#例1import timedef timeit(func):#装饰是一个函数,而其参数为另一个参数 def wrapper(): #在内部定义了一个函数,封装添加的功能 start = time.clock() #放一些在执行函数前的代码 func() #执行原始函数 end = time.c
       有时你需要在不改变源代码的情况下修改已经存在的函数。装饰实质上是一个函数。它把一个函数作为输入并且返回另外一个函数。       在装饰中,通常使用下面这些Python技巧:*args和**kwargs闭包作为参数的函数函数document_it()定义了一个装
转载 精选 2016-05-01 17:53:59
786阅读
没有太弄明白先放在这里,回头有时间再研究def outer(func):    def inner():        print ('log')        func()    &nbs
原创 2016-06-03 19:11:29
358阅读
函数式编程复习:def map_test(func,array):     array_new=[]     for i in array:         array_new.append(func
原创 2016-08-11 10:14:11
10000+阅读
10点赞
6评论
python 装饰
原创 2016-09-06 22:11:08
557阅读
1点赞
1评论
1.装饰1)本质就是函数,(装饰其他函数),为其他函数添加附加功能2)原则:1.不能修改被装饰的函数源代码2.不能修改被装饰的函数的调用方式实现装饰知识储备:1.函数即”变量“2.高阶函数3.嵌套函数高阶函数+嵌套函数=装饰import timedef trrm(fuc): #trrm(test1)     def&nbs
原创 2017-10-26 11:03:22
368阅读
软件开发中的一个原则“开放-封闭”原则,简单来说,它规定已经实现的功能代码不允许被修改,但可以被扩展,即: 封闭:已实现的功能代码块不应该被修改 开放:对现有功能的扩展开放
转载 2018-04-10 16:08:27
686阅读
def oo(func): @functiontools.wraps(func)#拿到原函数信息 def xx(*args,**kwargs): res = func(*args,**kwargs) return res return xx 装饰就是在不改变原函数功能情况下,为函数执行前后进行自定 ...
转载 2021-07-12 10:40:00
97阅读
2评论
例子一 执行 例子二 输出 例子三 输出 上面的 相当于
转载 2018-12-26 13:16:00
52阅读
  • 1
  • 2
  • 3
  • 4
  • 5