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中矩阵库Numpy基本操作详解
Nov 21 Python
python实现简易通讯录修改版
Mar 13 Python
python增加矩阵维度的实例讲解
Apr 04 Python
python实现跨excel的工作表sheet之间的复制方法
May 03 Python
实例分析python3实现并发访问水平切分表
Sep 29 Python
python分数表示方式和写法
Jun 26 Python
使用Python完成15位18位身份证的互转功能
Nov 06 Python
wxPython实现文本框基础组件
Nov 18 Python
15行Python代码实现免费发送手机短信推送消息功能
Feb 27 Python
Python reduce函数作用及实例解析
May 08 Python
django filter过滤器实现显示某个类型指定字段不同值方式
Jul 16 Python
django下创建多个app并设置urls方法
Aug 02 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
Laravel中扩展Memcached缓存驱动实现使用阿里云OCS缓存
2015/02/10 PHP
54个提高PHP程序运行效率的方法
2015/07/19 PHP
浅谈PHP的数据库接口和技术
2016/12/09 PHP
摘自启点的main.js
2008/04/20 Javascript
js判断输入是否为正整数、浮点数等数字的函数代码
2010/11/17 Javascript
jquery json 实例代码
2010/12/02 Javascript
jQuery 1.5 源码解读 面向中高阶JSER
2011/04/05 Javascript
jQuery实现随意改变div任意属性的名称和值(部分原生js实现)
2013/05/28 Javascript
JavaScript实现的伸展收缩型菜单代码
2015/10/14 Javascript
深入浅析JavaScript中的constructor
2016/04/19 Javascript
js控制li的隐藏和显示实例代码
2016/10/15 Javascript
超全面的vue.js使用总结
2017/02/12 Javascript
浅谈js中的变量名和函数名重名
2017/02/13 Javascript
Node.js和Express简单入门介绍
2017/03/24 Javascript
浅谈vue实现数据监听的函数 Object.defineProperty
2017/06/08 Javascript
nodejs基于WS模块实现WebSocket聊天功能的方法
2018/01/12 NodeJs
Node.js实现mysql连接池使用事务自动回收连接的方法示例
2018/02/03 Javascript
实例讲解JavaScript预编译流程
2019/01/24 Javascript
Ant Design Pro 下实现文件下载的实现代码
2019/12/03 Javascript
JS实现的雪花飘落特效示例
2019/12/03 Javascript
python 中的列表解析和生成表达式
2011/03/10 Python
python实现360皮肤按钮控件示例
2014/02/21 Python
Python中if __name__ == &quot;__main__&quot;详细解释
2014/10/21 Python
python的exec、eval使用分析
2017/12/11 Python
python实现动态创建类的方法分析
2019/06/25 Python
将python运行结果保存至本地文件中的示例讲解
2019/07/11 Python
python验证码图片处理(二值化)
2019/11/01 Python
wxPython绘图模块wxPyPlot实现数据可视化
2019/11/19 Python
keras自动编码器实现系列之卷积自动编码器操作
2020/07/03 Python
python利用蒙版抠图(使用PIL.Image和cv2)输出透明背景图
2020/08/04 Python
美国女性卫生用品公司:Thinx
2017/06/30 全球购物
什么是servlet
2012/05/08 面试题
生产部管理制度
2014/01/31 职场文书
原材料检验岗位职责
2014/03/15 职场文书
国际语言毕业生求职信
2014/07/08 职场文书
停水通知
2015/04/16 职场文书