sorted、返回函数、匿名函数、装饰器、偏函数
1.sorted()排序方法,它可已经一个列表按照升序排序,也可以按照反序排序
1)如果要进行反序排序时,需要在函数里面设置reverse = True
2)sorted是一个高阶函数,它接受函数作为参数,还可以通过key函数来实现自定义的排序,根据key函数来设置一些功能的实现
key函数写在数据类型的后面
2.返回函数
1)返回函数是将函数作为返回值的函数
在求一个函数时,如果我们不需要立刻返回结果值,我们可以定义一个函数将之作为另外一个函数的返回值,当运行返回的函数时,才会
将值输出
2)当一个函数作为另外一个函数的返回值时,内部函数可以调用外部函数的参数和局部变量,当外部函数返回内部函数时,
参数和局部变量还会保存在返回函数中,这称之为“闭包”
3)注意:返回函数不要引用任何循环变量,,或者后续会发生变化的变量,不然每次返回的值都相同
3.匿名函数:lambada就是匿名函数,他会简化函数的使用,匿名函数没有return关键字
1)当函数的参数时一个时,需要将函数的参数指出,不然会报错
例如:求x^2lambda x:x*x
2)当参数时另个时,就不需要指出参数,但也可以指出参数
例如:lambada x*x+y*y或者lambda x,y:x*x+y*y
3)匿名函数一般用于比较简单的函数,复杂的函数现在无法实现
4.装饰器(decorator)是一个返回函数的高阶函数,它是一种运行期间增加功能的函数,但不修改内部的函数的高阶函数
1)通过functools 包里面的wraps模块会自动补充完整函数的属性
2)在Python中可以通过函数实现装饰器,还可以通过类来实现装饰器
5.偏函数就是创建一种函数帮我们固定住函数的参数,来简化函数的实现
1)functools.partial()函数就是Python帮我们创建的一个偏函数,作用就是将原函数的某些参数固定,返回我们所学的一个新函数
2)偏函数functools.partial()函数接受*args可变参数和dict**kw键值对,一般在对数据类型进行计算时,将*args自动加入到数据类型左边
sorted、返回函数、匿名函数、装饰器、偏函数的更多相关文章
- Python复习笔记(四)高阶函数/返回函数/匿名函数/偏函数/装饰器
一.map/reduce map map()函数接收两个参数,一个是函数,一个是Iterable,map将传入的函数依次 作用到序列的每个元素,并把结果作为新的Iterator返回. reduce r ...
- Learning Python 012 函数式编程 2 返回函数 匿名函数 装饰器 偏函数
Python 函数式编程 2 返回函数 返回函数的意思就是:函数作为返回值.(高阶函数除了可以接受函数作为参数外,还可以把函数作为结果值返回.) 举个例子:实现一个可变参数的求和. 正常的函数: de ...
- Day4 内置函数补充、装饰器
li = [11,22,33,44]def f1(arg): arg.append(55)#函数默认返回值None,函数参数传递的是引用li = f1(li) print(li) 内置函数补充: ...
- 第四天 内置函数2 随机码 装饰器 迭代器、生成器 递归 冒泡算法 JSON
关于函数的return li = [11,22,33,44] def f1(arg): arg.append(55) li = f1(li) print(li) 因为li = f1(li) 实际赋值的 ...
- Python函数篇:装饰器
装饰器本质上是一个函数,该函数用来处理其他函数,它可以让其他函数在不需要修改代码的前提下增加额外的功能,装饰器的返回值也是一个函数对象.它经常用于有切面需求的场景,比如:插入日志.性能测试.事务处理. ...
- 函数基础(三) 装饰器\闭包 day 12
目录 昨日回顾 可变长参数 * ** 函数对象 函数嵌套 名称空间和作用域 今日内容 闭包函数 装饰器 语法糖 装饰器模板 迭代器 昨日回顾 可变长参数 * *形参:接受多余的位置实参 *实参(可迭代 ...
- python基础之函数当中的装饰器
在实际工作当中存在一个开放封闭原则 1.对扩展是开放的 为什么要对扩展开放呢? 我们说,任何一个程序,不可能在设计之初就已经想好了所有的功能并且未来不做任何更新和修改.所以我们必须允许代码扩展.添加新 ...
- 速战速决 (3) - PHP: 函数基础, 函数参数, 函数返回值, 可变函数, 匿名函数, 闭包函数, 回调函数
[源码下载] 速战速决 (3) - PHP: 函数基础, 函数参数, 函数返回值, 可变函数, 匿名函数, 闭包函数, 回调函数 作者:webabcd 介绍速战速决 之 PHP 函数基础 函数参数 函 ...
- Django视图函数函数之视图装饰器
FBV模式装饰器: 普通函数的装饰器(语法糖@) views.py from django.shortcuts import render def wrapper(f): def inner(*arg ...
- 装饰器&偏函数与作用域与异常处理与文件读写
装饰器 概念:是一个闭包,把一个函数当做参数返回一个替代版的函数,本质上就是一个返回函数的函数 简单的装饰器 def func1(): print("sunck is a good man& ...
随机推荐
- GPS数据处理
GPS数据处理 题目内容: NMEA-0183协议是为了在不同的GPS(全球定位系统)导航设备中建立统一的BTCM(海事无线电技术委员会)标准,由美国国家海洋电子协会(NMEA-The Nationa ...
- WebStorm 2021.3 的永久激活教程
关注公众号回复 webstorm 即可获取激活脚本和教程 更新时间 2022年9月2日. 不定时更新 激活码可在公众号中回复[激活码]获取.
- Nginx系列---【配置文件中静态资源文件禁止通过目录查看】
配置文件中静态资源文件禁止通过目录查看 1.问题 nginx作为文件服务器时,默认是可以通过目录路径查看该目录下的所有文件的,这样很不安全,容易造成静态资源泄露. 2.方案 location /ima ...
- 十大经典排序之快速排序(C++实现)
快速排序 通过一趟排序将待排序列分割成两部分,其中一部分记录的关键字均比另一部分记录的关键字小.之后分别对这两部分记录继续进行排序,以达到整个序列有序的目的. 思路: (1)选择基准:从数列中挑出一个 ...
- 用JS实现一个简单的购物车小案例
该案例主要是实现的功能有:添加商品功能,将商品添加到购物车的功能还有将商品删除功能,还有就是移出购物车的功能 该案例实现的难点是将商品添加到购物车列表的时候 数量的增加,当购物车有该商品的时候就进行累 ...
- "蔚来杯"2022牛客暑期多校训练营1 C.Grab the Seat!
C.Grab the Seat! 题目链接 https://ac.nowcoder.com/acm/contest/33186/C 题目大意 1.二维平面中,(0,1) - (0,m)为屏幕 2.有n ...
- RabbitMQ博文收藏
RabbitMQ基本概念 消息队列之 RabbitMQ
- CGAL的demo运行的步骤
首先使用CMake,找到demo的源文件目录,并且指定生成文件目录: 点击configur,done 点击generate,done 找到build目录中的.sln 文件,打开 ALL_BUILD 生 ...
- Vue 使用插件nprogress页面加载进度条
下载 npm i nprogress 在main.js中引入: import App from './App' import VueRouter from 'vue-router' import ro ...
- 通过Rdp实现连接远程桌面
unit UnitMain; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Fo ...