1.abs

简单来说abs的功能就是求一个数的绝对值

例:

特点:

<1>函数本身也可以赋值给变量,变量也可以指向函数

<2>传递的参数包括函数名

2.map

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

用法示例:

  • 问题1:请使用map函数对序列[-1,2,-3,4,-5]的每个元素求绝对值

聪明的小伙伴也许会这样写:

print(map(abs,[-1,2,-3,4,-5]))

你会发现语法上没有问题,结果也没有报错,可是却生出了一串奇奇怪怪的玩意儿:

<map object at 0x7fb904766be0>

这是因为map函数返回的是一个对象(object),而不是你想象的一个列表,当然关于对象的具体概念,我们后面再谈。正确写法:

程序练习题:,给出一个随机序列(5个元素,都在1~15之间的随机数),对于序列的每个元素求阶乘

3.reduce

reduce:把一个函数作用在一个序列上,这个函数必须接收两个参数,reduce把结果继续和序列的下一个元素做累积计算
reduce(f,[x1,x2,x3,x4,x5] = f(f(f(x1,x2),x3),x4)

用法示例:

注:这里在使用reduce时需要导入funtools包,如下:

from functools import reduce

4.filter过滤函数

和map()类似,也接收一个函数和一个序列
但fileter()把传入的函数依次作用于每个元素,然后根据返回值
是True或False来决定保留还是丢弃该元素

用法示例:

  • 用.filter过滤函数求0~20的偶数

5.sorted排序函数

例1:

li = [2,1,3,4]
li.sort(reverse=True)      ##reverse=True 指倒序
print(li)

例2:

info = {#商品名称 商品数量 商品价格('apple1',200,32),('apple2',40,12),('apple3',40,2),('apple4',1000,23),('apple5',40,5),
}# print(sorted(info))#按照商品数量进行排序
def sorted_by_count(x):return x[1]#按照商品价格进行排序
def sorted_by_price(x):return x[2]#先按照商品数量由小到大排序,如果商品数量一样
#则按照商品价格由小到大排序
def sorted_by_count_price(x):return x[1],x[2]print(sorted(info,key=sorted_by_count))
print(sorted(info,key=sorted_by_price))
print(sorted(info,key=sorted_by_count_price))

程序练习题:

(2018-携程-春招题)题目需求:
给定一个整形数组, 将数组中所有的0移动到末尾, 非0项保持不变;
在原始数组上进行移动操作, 勿创建新的数组;
输入:
第一行是数组长度, 后续每一行是数组的一条记录;
4
0
7
0
2
输出:
调整后数组的内容;
4
7
2
0
0

利用map和reduce写一个函数,把字符串’123.456’转换成浮点数123.456

回数是指从左向右读和从右向左读都是一样的数,例如12321,909。请利用filter()筛选出回数

Python之常用的高阶函数——abs、map、reduce、filter、sorted相关推荐

  1. Python进阶:函数式编程(高阶函数,map,reduce,filter,sorted,返回函数,匿名函数,偏函数)...啊啊啊...

    函数式编程 函数是Python内建支持的一种封装,我们通过把大段代码拆成函数,通过一层一层的函数调用,就可以把复杂任务分解成简单的任务,这种分解可以称之为面向过程的程序设计.函数就是面向过程的程序设计 ...

  2. python3高阶函数:map(),reduce(),filter()的区别

    转载请注明出处:https://www.cnblogs.com/shapeL/p/9057152.html 1.map():遍历序列,对序列中每个元素进行操作,最终获取新的序列 1 print(lis ...

  3. Swift-高阶函数如map,reduce,filter的一些总结

    Swift 这个语言,速度快,更加安全,代码少,易于阅读维护. 所以一些高阶函数在项目实际使用中也是蛮方便的总结如下: 高阶函数的定义:一个函数如果可以以某个函数作为参数,或者返回值,那么这个函数就称 ...

  4. Python中常用的高阶函数

    Python 中常用的高阶函数 ① filter(function,iterable)filter(function, iterable)filter(function,iterable)   过滤器 ...

  5. python高阶函数、map reduce 自己如何去定义_小猿圈python之高阶函数lambda、map和reduce用法...

    python有很多内置函数,内置函数封装了很多功能,让我们用起来很方便,小猿圈针对高阶函数有详细的讲解视频,朋友们可以去看看,小编学后总结了一下,下面说一下lambda.map和reduce高阶函数的 ...

  6. 【Python】Python四大内置高阶函数(map、reduce、filter、sorted)

    一.map函数 描述:接收两个参数,一个是函数,一个是序列,map将传入的函数依次作用到序列的每个元素.如果传入了多个iterable参数,function 必须接受相同个数的实参并被应用于从所有可迭 ...

  7. Python——四大内置高阶函数(map、reduce、filter、sorted)

    一.map函数 基本介绍: map():接收两个参数,一个是函数,一个是序列 map将传入的函数依次作用到序列的每个元素,并把结果 作为新的序列返回 代码块: #对于序列[-1,3,-5,-2]的每个 ...

  8. python高阶函数、map reduce 自己如何去定义_「python」高阶函数map、reduce的介绍

    Python map 先看官方介绍: map(function, iterable, ...)Return an iterator that applies function to every ite ...

  9. py函数式编程(高阶函数map/reduce/filter/sorted、闭包函数/返回函数、匿名函数lamber、@装饰器decorator、偏函数functool.partial())

    #py函数式编程.py #高阶函数map/reduce/filter/sorted.闭包函数/返回函数.匿名函数lamber.@装饰器decorator.偏函数functool.partial()# ...

最新文章

  1. 计算机考试受苦受累,受苦受累真是福作文800字
  2. 【技术分享】如何解锁高通骁龙660上的安卓引导加载程序
  3. 我跟17位顶级游戏策划人学到的3个产品方法论
  4. 利用循环神经网络生成唐诗_11种主要神经网络结构图解
  5. c++对象的内存布局2--进阶篇---C++ 对象的内存布局(上)
  6. C++ 常用集合算法
  7. linphone-android移植
  8. 简单聊聊Python协程
  9. 用html代码写出城东早春,网页设计基础 从零开始构建HTML 页面 第2章 从零开始构建HTML页面_补充案例.doc...
  10. 数据结构笔记(二)--- 顺序实现线性表
  11. 用Matlab解MTPA的dq轴电流的方程
  12. 使用CURL抓取https网页报错的一种解决方法
  13. 使用RMF报表设计器进行报表设计
  14. opencv根据摄像头名称打开摄像头(附源码)
  15. 环境变量的作用,为什么要要设置环境变量PATH
  16. [原] 手擀寿面祝妈妈生日快乐
  17. ubuntu 系统声音静音问题
  18. UnityMesh 博文收藏
  19. MySQL的左连接查询,只取出最大的一条数据
  20. 关于物联网安全网关的思考

热门文章

  1. pandas移除dataframe字符串数据列中的后N个字符(remove the last n characters from values from column of dataframe)
  2. R语言使用xgboost构建回归模型:vtreat包为xgboost回归模型进行数据预处理(缺失值填充、缺失值标识、离散变量独热onehot编码)、构建出生体重的xgboost模型回归模型
  3. R语言ggplot2可视化自定义图例实战:添加自定义的图例、添加填充色的图例
  4. unexpected symbol、unexpected end of input
  5. NLP诗词生成模型数据准备及实战
  6. 面向对象一类与对象的概念与特性
  7. oracle 257,ORACLE 10g SYSAUX表空间快速增长之WRH$_ACTIVE_SESSION_HISTORY篇
  8. jq处理 php数组,jQuery数组处理方法汇总_jquery
  9. tensorflow 转 numpy 转 tensorflow
  10. numpy 数组 填充 0、1和各种值