一、定义函数式就是用编程语言去实现数学函数。这种函数内对象是永恒不变的,要么参数是函数,要么返回值是函数,没for和while循环所有的循环都由递归去实现,无变量的赋值(即不用变量去保存状态),无赋值即不可改变。二、特点1、不可变数据不可变:不用变量保存状态,不修改变量a. 非函数式a = 1
def test():
global a
a += 1
return a
test()
print(a)            
                
         
            
            
            
            Python之递归函数与装饰器文章目录Python之递归函数与装饰器递归的含义:python中的时间模块装饰器递归函数在函数内部,可以调用其他函数。如果一个函数在内部调用自身本身,这个函数就是递归函数。递归函数特性:必须有一个明确的结束条件;每次进入更深一层递归时,问题规模相比上次递归都应有所减少相邻两次重复之间有紧密的联系,前一次要为后一次做准备(通常前一次的输出            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-11-13 16:59:13
                            
                                130阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1、有参装饰器:给装饰器添加一个参数、来控制装饰器的行为。 @auth(参数)            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-12-23 00:57:17
                            
                                47阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            import os,sys# 题目1 斐波那契数列# 从第三项开始 每一项等于前两项的和 求第n项# 1 1 2 3 5 8 13 21sys.setrecursionlimit(100000)#未优化# 函数装饰def memo(func):    cache={}    def wrap(*args):        if args not in cache:            cache            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-03-16 04:06:19
                            
                                26阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            递归函数、生成器、装饰器递归:  在函数执行中调用自身必须有边界条件,递归前进段和递归返回段python中递归有层次限制递归函数实现阶乘def fact(n): 
    if n <= 1:
        re            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2016-11-27 22:40:00
                            
                                1145阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            回到装饰器上的概念上来,装饰器要求接受一个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            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2015-12-17 14:08:52
                            
                                851阅读
                            
                                                                             
                 
                
                             
         
            
            
            
                   有时你需要在不改变源代码的情况下修改已经存在的函数。装饰器实质上是一个函数。它把一个函数作为输入并且返回另外一个函数。       在装饰器中,通常使用下面这些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+阅读
                            
                                                        
                                点赞
                            
                                                                                    
                                6评论
                            
                                                 
                 
                
                             
         
            
            
            
            python 装饰器            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2016-09-06 22:11:08
                            
                                560阅读
                            
                                                        
                                点赞
                            
                                                                                    
                                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阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            python装饰器感觉是个小小的难点(@_@): 正文: 1. python装饰器(@) 先写两个函数来理解下装饰器原理: def func_1(func): print("我是:") func() def func_2(): print("剑圣") print("***********我是分割线* ...            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2021-09-13 22:35:00
                            
                                66阅读
                            
                                                                                    
                                2评论