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、返回函数、匿名函数、装饰器、偏函数的更多相关文章

  1. Python复习笔记(四)高阶函数/返回函数/匿名函数/偏函数/装饰器

    一.map/reduce map map()函数接收两个参数,一个是函数,一个是Iterable,map将传入的函数依次 作用到序列的每个元素,并把结果作为新的Iterator返回. reduce r ...

  2. Learning Python 012 函数式编程 2 返回函数 匿名函数 装饰器 偏函数

    Python 函数式编程 2 返回函数 返回函数的意思就是:函数作为返回值.(高阶函数除了可以接受函数作为参数外,还可以把函数作为结果值返回.) 举个例子:实现一个可变参数的求和. 正常的函数: de ...

  3. Day4 内置函数补充、装饰器

    li = [11,22,33,44]def f1(arg): arg.append(55)#函数默认返回值None,函数参数传递的是引用li = f1(li) print(li)   内置函数补充: ...

  4. 第四天 内置函数2 随机码 装饰器 迭代器、生成器 递归 冒泡算法 JSON

    关于函数的return li = [11,22,33,44] def f1(arg): arg.append(55) li = f1(li) print(li) 因为li = f1(li) 实际赋值的 ...

  5. Python函数篇:装饰器

    装饰器本质上是一个函数,该函数用来处理其他函数,它可以让其他函数在不需要修改代码的前提下增加额外的功能,装饰器的返回值也是一个函数对象.它经常用于有切面需求的场景,比如:插入日志.性能测试.事务处理. ...

  6. 函数基础(三) 装饰器\闭包 day 12

    目录 昨日回顾 可变长参数 * ** 函数对象 函数嵌套 名称空间和作用域 今日内容 闭包函数 装饰器 语法糖 装饰器模板 迭代器 昨日回顾 可变长参数 * *形参:接受多余的位置实参 *实参(可迭代 ...

  7. python基础之函数当中的装饰器

    在实际工作当中存在一个开放封闭原则 1.对扩展是开放的 为什么要对扩展开放呢? 我们说,任何一个程序,不可能在设计之初就已经想好了所有的功能并且未来不做任何更新和修改.所以我们必须允许代码扩展.添加新 ...

  8. 速战速决 (3) - PHP: 函数基础, 函数参数, 函数返回值, 可变函数, 匿名函数, 闭包函数, 回调函数

    [源码下载] 速战速决 (3) - PHP: 函数基础, 函数参数, 函数返回值, 可变函数, 匿名函数, 闭包函数, 回调函数 作者:webabcd 介绍速战速决 之 PHP 函数基础 函数参数 函 ...

  9. Django视图函数函数之视图装饰器

    FBV模式装饰器: 普通函数的装饰器(语法糖@) views.py from django.shortcuts import render def wrapper(f): def inner(*arg ...

  10. 装饰器&偏函数与作用域与异常处理与文件读写

    装饰器 概念:是一个闭包,把一个函数当做参数返回一个替代版的函数,本质上就是一个返回函数的函数 简单的装饰器 def func1(): print("sunck is a good man& ...

随机推荐

  1. shell脚本基本介绍

    1.编程介绍 驱动 硬件默认是不能使用的 CPU控制硬件.不同的厂家硬件设备之间需要进行指令沟通,我们需要驱动程序来进行"翻译": 更趋近与开发的工程师,要学习"汇编语言 ...

  2. Spring 笔记三 AOP

    1.AOP 概述 AOP (Aspect-Oriented  Programming,面向切面编程):是一种新的方法论,是对传统 OOP (Object-Oriented  Programming,面 ...

  3. Java swing图形界面计算器

    效果图如下所示 : import java.awt.Color; import java.awt.Container; import java.awt.Font; import java.awt.Gr ...

  4. python开头

    python识别的正则模式 coding[:=]\s*([-\w.]+)#coding:utf8   ???不要用 #coding=utf-8#coding:utf-8# -*- coding: ut ...

  5. 磊磊零基础打卡算法:day17 c++堆排序

    5.20 前言吐槽: 今天是5.20啦,但是作为单身修狗的我只能和代码过啦...继续加油算法打卡!!! 堆排序: 堆就是一棵完全二叉树 二叉堆是一种支持插入,删除,查询最值的数据结构.他其实是一棵满足 ...

  6. 网络数据请求get&post

  7. k8s集群跨namespace访问服务

    场景:自己有一个java应用部署在test命名空间下,但是一直无法访问到middleware命名空间下的mysql服务 查找资料发现下面所说的问题 我们通常会把mysql,redis,rabbitmq ...

  8. Java下变量大小写驼峰、大小写下划线、大小写连线转换

    <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artif ...

  9. 讨论django并发能力及提供并发解决方案

    django 的并发能力真的是令人担忧,这里就使用 nginx + uwsgi 提供高并发 nginx 的并发能力超高,单台并发能力过万(这个也不是绝对),在纯静态的 web 服务中更是突出其优越的地 ...

  10. insert-text-at-cursor-in-a-content-editable-div

    https://stackoverflow.com/questions/2920150/insert-text-at-cursor-in-a-content-editable-div function ...