Python常见内置高效率函数用法示例


Posted in Python onJuly 31, 2018

本文实例讲述了Python常见内置高效率函数用法。分享给大家供大家参考,具体如下:

1.  filter(function,sequence)

将sequence中的每个元素,依次传进function函数(可以自定义,返回的结果是True或者False)筛选,返回符合条件的元素,重组成一个String,List,Tuple等(跟sequence一样)

示例

def func(x):
  return x%2==0 and x%3==0
filter(func,(3,6,8,12,15,21))
#(6, 12)

2. map(functiom,sequence)

将sequence中的每个元素,依次传进function函数(可以自定义,返回的结果是数值)计算,无论sequence是什么类型,都返回List

示例

def func(x):
  return x*2
map(func,(3,6,8,12,15,21))
#[6, 12, 16, 24, 30, 42]

map支持多个sequence输入,但是function也要有相同数量的参数

def func(x,y):
  return x+y
seq1=[3,6,4,8]
seq2=[6,4,3,7]
map(func,seq1,seq2)
#[9, 10, 7, 15]

注意:以上示例是在python2.7中的,python3要用如下用法

>>> map_obj = map(lambda x:x+1,[1,2,3,4])
>>> map_obj
<map object at 0x0000014C511BD898>
>>> list(map_obj)
[2, 3, 4, 5]

3. reduce(function, sequence, starting_value)

将sequence中的item顺序迭代调用function,例如可以用来对List求和:

def add(x,y):
  return x+y
reduce(add,[3,6,4,8])
#21
#相当于运行‘3+6+4+8'=21

如果有starting_value,还可以作为初始值调用

def subtract(x,y):
  return x-y
reduce(subtract,[3,6,4],20)
#7
#相当于'20-3-6-4'=7

4. lambda匿名函数

语法:lambda 参数1,参数2(,参数n..):表达式     返回的是一个函数对象

示例

func=lambda x,y:x+y
func(3,5)
#8

将lambda和reduce结合

reduce(lambda x,y:x+y,[3,6,4,8])
#21

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
你眼中的Python大牛 应该都有这份书单
Oct 31 Python
使用python爬虫实现网络股票信息爬取的demo
Jan 05 Python
教你使用python画一朵花送女朋友
Mar 29 Python
Python版名片管理系统
Nov 30 Python
Python基础学习之函数方法实例详解
Jun 18 Python
python3用PIL把图片转换为RGB图片的实例
Jul 04 Python
Python八皇后问题解答过程详解
Jul 29 Python
tensorflow没有output结点,存储成pb文件的例子
Jan 04 Python
python中os包的用法
Jun 01 Python
Python基于execjs运行js过程解析
Nov 27 Python
python数据可视化JupyterLab实用扩展程序Mito
Nov 20 Python
浅谈Python中对象是如何被调用的
Apr 06 Python
Python使用jsonpath-rw模块处理Json对象操作示例
Jul 31 #Python
flask-socketio实现WebSocket的方法
Jul 31 #Python
深入flask之异步非堵塞实现代码示例
Jul 31 #Python
Django框架使用富文本编辑器Uedit的方法分析
Jul 31 #Python
Windows下python3.6.4安装教程
Jul 31 #Python
windows下pycharm安装、创建文件、配置默认模板
Jul 31 #Python
win8下python3.4安装和环境配置图文教程
Jul 31 #Python
You might like
PHP实现基于PDO扩展连接PostgreSQL对象关系数据库示例
2018/03/31 PHP
使用Microsoft Ajax Minifier减小JavaScript文件大小的方法
2010/04/01 Javascript
JQuery 返回布尔值Is()条件判断方法代码
2012/05/14 Javascript
javascript实现可拖动变色并关闭层窗口实例
2015/05/15 Javascript
jquery中map函数遍历数组用法实例
2015/05/18 Javascript
非常棒的jQuery图片轮播效果
2016/04/17 Javascript
Highcharts学习之数据列
2016/08/03 Javascript
JS实现物体带缓冲的间歇运动效果示例
2016/12/22 Javascript
AngularJS中update两次出现$promise属性无法识别的解决方法
2017/01/05 Javascript
js 将input框中的输入自动转化成半角大写(税号输入框)
2017/02/16 Javascript
nodejs中全局变量的实例解析
2017/03/07 NodeJs
vue服务端渲染的实例代码
2017/08/28 Javascript
基于dataset的使用和图片延时加载的实现方法
2017/12/11 Javascript
ES6知识点整理之对象解构赋值应用示例
2019/04/17 Javascript
解决使用layui的时候form表单中的select等不能渲染的问题
2019/09/18 Javascript
JS在Array数组中按指定位置删除或添加元素对象方法示例
2019/11/19 Javascript
基于javascript处理nginx请求过程详解
2020/07/07 Javascript
[43:26]完美世界DOTA2联赛PWL S2 Forest vs Rebirth 第二场 11.20
2020/11/23 DOTA
python3使用PyMysql连接mysql数据库实例
2017/02/07 Python
Python排序算法之选择排序定义与用法示例
2018/04/29 Python
python实现机器学习之元线性回归
2018/09/06 Python
python爬虫爬取幽默笑话网站
2019/10/24 Python
jupyter notebook oepncv 显示一张图像的实现
2020/04/24 Python
浅析python字符串前加r、f、u、l 的区别
2021/01/24 Python
css3 中的新特性加强记忆详解
2016/04/16 HTML / CSS
英国最受欢迎的价格比较网站之一:MoneySuperMarket
2018/12/19 全球购物
Tenstickers法国:墙贴和装饰贴纸
2019/08/26 全球购物
接口的多继承会带来哪些问题
2015/08/17 面试题
自我鉴定范文300字
2013/10/01 职场文书
2013年学期结束动员演讲稿
2014/01/07 职场文书
建筑总经理岗位职责
2014/02/02 职场文书
乡村文明行动实施方案
2014/03/29 职场文书
升学宴来宾致辞
2015/07/27 职场文书
2016年三严三实党课学习心得体会
2016/01/06 职场文书
python数据可视化JupyterLab实用扩展程序Mito
2021/11/20 Python
小程序实现侧滑删除功能
2022/06/25 Javascript