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程序的执行原理
Apr 11 Python
编写Python CGI脚本的教程
Jun 29 Python
python列表操作之extend和append的区别实例分析
Jul 28 Python
python开发之基于thread线程搜索本地文件的方法
Nov 11 Python
Python调用SQLPlus来操作和解析Oracle数据库的方法
Apr 09 Python
对numpy数据写入文件的方法讲解
Jul 09 Python
在python中安装basemap的教程
Sep 20 Python
python 的topk算法实例
Apr 02 Python
python json.dumps() json.dump()的区别详解
Jul 14 Python
python+requests接口自动化框架的实现
Aug 31 Python
python如何编写类似nmap的扫描工具
Nov 06 Python
使用Django实现商城验证码模块的方法
Jun 01 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 strncasecmp字符串比较的小技巧
2011/01/04 PHP
php中使用explode查找某个字符是否存在的方法
2011/07/12 PHP
PHP学习笔记 IIS7下安装配置php环境
2012/10/29 PHP
PHP中SimpleXML函数用法分析
2014/11/26 PHP
php多重接口的实现方法
2015/06/20 PHP
PHP单例模式详解及实例代码
2016/12/21 PHP
PHP基于phpqrcode类生成二维码的方法详解
2018/03/14 PHP
Javascript中的var_dump函数实现代码
2009/09/07 Javascript
jQuery Dialog 弹出层对话框插件
2010/08/09 Javascript
JQuery通过Ajax提交表单并返回结果
2011/07/31 Javascript
js定时器(执行一次、重复执行)
2014/03/07 Javascript
JavaScript中解析JSON数据的三种方法
2015/07/03 Javascript
JavaScript+canvas实现七色板效果实例
2016/02/18 Javascript
AngularJS中控制器函数的定义与使用方法示例
2017/10/10 Javascript
Vue 组件传值几种常用方法【总结】
2018/05/28 Javascript
Koa 使用小技巧(小结)
2018/10/22 Javascript
JavaScript错误处理操作实例详解
2019/01/04 Javascript
深入学习JavaScript中的bom
2019/05/27 Javascript
ES2020 已定稿,真实场景案例分析
2020/05/25 Javascript
vue中的.$mount('#app')手动挂载操作
2020/09/02 Javascript
python提取内容关键词的方法
2015/03/16 Python
python2.x实现人民币转大写人民币
2018/06/20 Python
Python迭代器与生成器用法实例分析
2018/07/09 Python
django模板结构优化的方法
2019/02/28 Python
Django MEDIA的配置及用法详解
2019/07/25 Python
Python使用ffmpy将amr格式的音频转化为mp3格式的例子
2019/08/08 Python
win10子系统python开发环境准备及kenlm和nltk的使用教程
2019/10/14 Python
Python3运算符常见用法分析
2020/02/14 Python
为什么称python为胶水语言
2020/06/16 Python
法律进企业活动方案
2014/03/04 职场文书
优秀毕业生自荐信
2014/06/10 职场文书
公司副总经理岗位职责
2014/10/01 职场文书
毕业典礼邀请函
2015/01/31 职场文书
2016年共产党员公开承诺书
2016/03/24 职场文书
企业转让协议书(范文2篇)
2019/08/15 职场文书
利用Python第三方库实现预测NBA比赛结果
2021/06/21 Python