高阶函数:内部帮忙做了一个for循环

  1. filter:筛选过滤

    语法: filter(function,iterable)
    function: 1.指定过滤规则(函数的内存地址) 2.用来筛选的函数,在filter中会自动的把iterable中的元素传递给function,然后根据function返回的True或者False来判断是否保留此项数据 iterable:可迭代对象 ####写函数名切记不加括号 lst = [{'id':1,'name':'alex','age':18},
    {'id':1,'name':'wusir','age':17},
    {'id':1,'name':'taibai','age':16},] ls = filter(lambda e:e['age'] > 16,lst) print(list(ls)) 结果:
    [{'id': 1, 'name': 'alex', 'age': 18},
    {'id': 1, 'name': 'wusir', 'age': 17}]
  2. map():映射函数--将每个元素都执行了指定的方法(面试问

    print(list(map()))-- 格式
    
    语法: map(function,iterable) 可以对可迭代对象中的每一个元素进映射,分别取执行function,计算列表中每个元素的平方,返回新列表
    
    lst = [1,2,3,4,5]
    
    print(list(map(lambda s:s*s,lst)))
    
    计算两个列表中相同位置的数据的和
    
    lst1 = [1, 2, 3, 4, 5]
    
    lst2 = [2, 4, 6, 8, 10]
    
    print(list(map(lambda x, y: x+y, lst1, lst2)))
    
    结果:
    
    [3, 6, 9, 12, 15]
    1. sorted : 排序函数,默认返回的是列表
    语法:sorted(iterable,key=None,reverse=False)
    
    print(sorted([1,-22,3,4,5,6],key = abs))		#key指定排序规则,abs后不加括号
    
    在sorted内部会将可迭代对象中的每一个元素传递给这个函数的参数.根据函数运算的结果进行排序
    
    lst = [{'id':1,'name':'alex','age':18},
    {'id':2,'name':'wusir','age':17},
    {'id':3,'name':'taibai','age':16},] # 按照年龄对学生信息进行排序
    print(sorted(lst,key=lambda x : list(x.values()))) # 值排序
    print(sorted(lst,key=lambda e:e['age'])) 结果:
    [{'id': 3, 'name': 'taibai', 'age': 16}, {'id': 2, 'name': 'wusir', 'age': 17}, {'id': 1, 'name': 'alex', 'age': 18}]
  3. max():最大值

    print(max(10,3,4,5,2,6,76))		#输出  76
    print(max(10,3,4,5,2,-6,76),key= abs)
    1. min():最小值 #可迭代对象,key=指定规则
  4. reduce() :--计算,一层一层垒起来算,指定的函数方法必须接受两个形参

    print(reduce(lambda x,y:x+y,[1,2,3,4,5]))		#冒号等同于return,结果15

从入门到自闭之Python高阶函数的更多相关文章

  1. 用一个简单的例子来理解python高阶函数

    ============================ 用一个简单的例子来理解python高阶函数 ============================ 最近在用mailx发送邮件, 写法大致如 ...

  2. Python高阶函数_map/reduce/filter函数

    本篇将开始介绍python高阶函数map/reduce/filter的用法,更多内容请参考:Python学习指南 map/reduce Python内建了map()和reduce()函数. 如果你读过 ...

  3. Python高阶函数及函数柯里化

    1 Python高阶函数 接收函数为参数,或者把函数作为结果返回的函数为高阶函数. 1.1 自定义sort函数 要求:仿照内建函数sorted,自行实现一个sort函数.内建函数sorted函数是返回 ...

  4. python——高阶函数:高阶函数

    python高阶函数 00初识高阶函数 一等公民 函数在python中是一等公民(First-Class Object),同样和变量一样,函数也是对象,只不过是可调用的对象,所以函数也可以作为一个普通 ...

  5. python高阶函数的使用

    目录 python高阶函数的使用 1.map 2.reduce 3.filter 4.sorted 5.小结 python高阶函数的使用 1.map Python内建了map()函数,map()函数接 ...

  6. python 高阶函数之filter

    前文说到python高阶函数之map,相信大家对python中的高阶函数有所了解,此次继续分享python中的另一个高阶函数filter. 先看一下filter() 函数签名 >>> ...

  7. Python高阶函数

    在Python中,函数名也是一个变量,可以进行赋值  高阶函数是至少满足下列一个条件的函数: 接受一个或多个函数作为输入 输出一个函数 函数名也可以作为函数参数,还可以作为函数返回值 def f(n) ...

  8. Python高阶函数之 - 装饰器

    高阶函数:  1. 函数名可以作为参数传入     2. 函数名可以作为返回值. python装饰器是用于拓展原来函数功能的一种函数 , 这个函数的特殊之处在于它的返回值也是一个函数 , 使用pyth ...

  9. Python高阶函数和匿名函数

    高阶函数:就是把函数当成参数传递的一种函数:例如 注解: 1.调用add函数,分别执行abs(-8)和abs(11),分别计算出他们的值 2.最后在做和运算 map()函数 python内置的一个高阶 ...

随机推荐

  1. AtCoder AGC032E Modulo Pairing (二分、贪心与结论)

    题目链接 https://atcoder.jp/contests/agc032/tasks/agc032_e 题解 猜结论好题. 结论是: 按\(a_i\)从小到大排序之后,一定存在一种最优解,使得以 ...

  2. spark-sql cli 参数 及使用

    很难找到spark-sql cli使用的教程,总结下一.启动方法/data/spark-1.4.0-bin-cdh4/bin/spark-sql --master spark://master:707 ...

  3. 2.微服务开发框架——Spring Cloud

                     微服务开发框架—Spring Cloud 2.1. Spring Cloud简介及其特点 简介: Spring Cloud为开发人员提供了快速构建分布式系统中一些常见 ...

  4. 批量删除.svn文件夹、.svn文件

      使用svn进行版本控制,每个文件夹下都有.svn文件夹,有些项目在脱离svn版本控制之后,想删除项目中所有的.svn文件夹,可用下面的方法进行快速删除: 1.打开要删除.svn文件的最外层文件夹, ...

  5. koa 基础(十九)es6中的单例

    1.app.js /** * es6中的单例 * 实例化的时候,无论实例多少次,构造函数只执行一次,有利于提高性能 */ class Db { static getInstance() { /*单例* ...

  6. 哨兵模式启动redis

    # 启动Redis服务器进程./redis-server ../redis.conf# 启动哨兵进程./redis-sentinel ../sentinel.conf windows 启动 redis ...

  7. Failed to start LSB: start and stop MariaDB

    Failed to start LSB: start and stop MariaDB */--> Failed to start LSB: start and stop MariaDB Tab ...

  8. IPV6基础

    Pv6与IPv4的区别 Pv6报文与IPv4报文差别就两个地方: 一个是数据链路层(以太网协议)中协议类型,IPv4是0x0800,IPv6是0x86DD 另一个是IPv6 Header是40字节,I ...

  9. Linux内存简单汇总

    Linux内存主要用来存储系统和应用程序的指令,数据,缓存等 一,内存映射 1,内核给每个进程提供一个独立的虚拟机地址空间,并且这个地址空间是连续的 2,虚拟地址空间内部又被分为内核空间和用户空间 3 ...

  10. OpenStack 节点重启后无法联网的问题

    问题 五一归来,大量服务器被重启了,其中一台服务器失联了.通过远程桌面登录之后发现服务器的 IP 地址是 "正常" 的,可以 Ping 通自己的 IP,但 Ping 不同网关. 解 ...