高阶函数 定义 1. 函数接受的参数是一个函数 2. 函数的返回值为一个函数 3. 满足以上2点中其中一个就是高阶函数 函数嵌套 定义 1. 函数中def定义一个函数 2. 嵌套会存在闭包, 其他情况不会有闭包(闭包闭的是变量) 装饰器 实质 1. 装饰器 == 高阶函数 + 嵌套函数 + 闭包 2 ...
分类:
编程语言 时间:
2019-02-10 20:37:27
阅读次数:
172
filiter() 高阶函数filter()接收一个函数和一个序列 ,filter()把传入的函数依次作用于序列的每个元素,然后根据返回值是True还是False决定保留还是丢弃该元素, 返回值是一个Iterator。 map() reduce() reduce()函数接受三个参数, 第一个为函数, ...
分类:
编程语言 时间:
2019-02-07 16:32:41
阅读次数:
206
目录 [TOC] 前言 这一篇式相继上一篇5.1Python函数(一)的进阶文章。 一个重要的思想是:我们把”函数名“当成一个变量来处理。 (一)偏函数 ==1.说明== 偏函数:在不修改原函数的原函数前提下,修改函数的默认值,新建的函数叫偏函数。 ==2.原代码== ==3.显示效果== (二)高 ...
分类:
编程语言 时间:
2019-02-04 15:32:44
阅读次数:
195
返回函数 def func(flag): def sum(a,b): return a+b def jianfa(a,b): return a-b if flag == "+": return sum else: return jianfa result = func("+") print(resu ...
分类:
编程语言 时间:
2019-02-02 10:28:00
阅读次数:
208
一、高阶函数 1、函数名可以赋值 2、函数名可以作为函数参数 3、函数名可以作为函数的返回值eg:def f1(n): return n*n def f2(a, b, f): return f(a) + f(b) # 此处f() 相当于 f1() num = f2(1, 2, f1) print(n... ...
分类:
编程语言 时间:
2019-02-02 00:20:30
阅读次数:
251
上面函数运行会出现报错: 函数调用时出错; 'NoneType' object is not callable 此时将调用函数语句去掉后面的括号,改为 test1即可。 装饰器:本质是函数(装饰其他函数)就是为其他函数添加附加功能 高阶函数+嵌套函数==》装饰器 原则:不能修改被装饰函数的原代码 不 ...
分类:
编程语言 时间:
2019-01-30 21:47:36
阅读次数:
249
Python 的 functools 模块可以说主要是为函数式编程而设计,用于增强函数功能。 functools.partial 用于创建一个偏函数,它用一些默认参数包装一个可调用对象,返回结果是可调用对象,并且可以像原始对象一样对待,这样可以简化函数调用。实际上 partial 相当于一个高阶函数 ...
分类:
编程语言 时间:
2019-01-30 19:54:38
阅读次数:
234
高阶函数概念引入:满足下面两个条件之一便可以称为高阶函数 1:把一个函数的函数名当作实参传给另外一个函数。 2:返回值中包含函数名。 下面是一段简单的高阶函数的代码使用条件1: 下面是一段在第一段代码的基础上新增了一些功能的高阶函数,从中也慢慢显示出了装饰器的影子。 3:观察第二段代码发现貌似已经实 ...
分类:
其他好文 时间:
2019-01-23 22:34:58
阅读次数:
193
#!/usr/bin/env python # -*- coding:utf-8 -*- #Author:sking #Python3 高阶函数 #高阶函数英文叫Higher-order function。什么是高阶函数?我们以实际代码为例子,一步一步深入概念。 #变量可以指向函数 #以Python... ...
分类:
编程语言 时间:
2019-01-23 00:18:07
阅读次数:
134
装饰器(Decorator)本质是函数,功能是为其他函数添加附加功能,定义一个装饰器需要满足以下两个原则: 不修改被修饰函数源代码(开放封闭原则) 不修改被修饰函数的调用方式 装饰器 = 高阶函数 + 函数嵌套 + 闭包 1. 高阶函数 高阶函数定义: 函数接收的参数是一个函数 函数的返回值是一个函 ...
分类:
其他好文 时间:
2019-01-21 23:21:02
阅读次数:
182