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简单程序读取串口信息的方法
Mar 13 Python
使用python读取csv文件快速插入数据库的实例
Jun 21 Python
用pycharm开发django项目示例代码
Jun 13 Python
python如何实现视频转代码视频
Jun 17 Python
python读写csv文件方法详细总结
Jul 05 Python
python GUI库图形界面开发之PyQt5信号与槽事件处理机制详细介绍与实例解析
Mar 08 Python
python实现对变位词的判断方法
Apr 05 Python
Python如何使用队列方式实现多线程爬虫
May 12 Python
通过Python扫描代码关键字并进行预警的实现方法
May 24 Python
基于Python的自媒体小助手---登录页面的实现代码
Jun 29 Python
python 如何用map()函数创建多线程任务
Apr 07 Python
浅析Python实现DFA算法
Jun 26 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
如何将一个表单同时提交到两个地方处理
2006/10/09 PHP
使用Linux五年积累的一些经验技巧
2013/06/20 PHP
Discuz论坛密码与密保加密规则
2016/12/19 PHP
PHP防止sql注入小技巧之sql预处理原理与实现方法分析
2019/12/13 PHP
PHP number_format函数原理及实例解析
2020/07/14 PHP
Javascript学习笔记6 prototype的提出
2010/01/11 Javascript
jQuery EasyUI API 中文文档 可调整尺寸
2011/09/29 Javascript
nodejs分页类代码分享
2014/06/17 NodeJs
JQuery使用index方法获取Jquery对象数组下标的方法
2015/05/18 Javascript
JSON遍历方式实例总结
2015/12/07 Javascript
Ionic默认的Tabs模板使用实例
2016/08/29 Javascript
JavaScript验证知识整理
2017/03/24 Javascript
jQuery使用正则验证15/18身份证的方法示例
2017/04/27 jQuery
vue.js 使用v-if v-else发现没有执行解决办法
2017/05/15 Javascript
nodejs中art-template模板语法的引入及冲突解决方案
2017/11/07 NodeJs
JS中Object对象的原型概念基础
2018/01/29 Javascript
Vue发布项目实例讲解
2019/07/17 Javascript
基于python的汉字转GBK码实现代码
2012/02/19 Python
Python实现抓取网页并且解析的实例
2014/09/20 Python
pandas string转dataframe的方法
2018/04/11 Python
Python使用win32com模块实现数据库表结构自动生成word表格的方法
2018/07/17 Python
python GUI库图形界面开发之PyQt5单行文本框控件QLineEdit详细使用方法与实例
2020/02/27 Python
Python 通过正则表达式快速获取电影的下载地址
2020/08/17 Python
重构Python代码的六个实例
2020/11/25 Python
香港士多网上超级市场:Ztore
2021/01/09 全球购物
大唐面试试题(CPU,UNIX等等)
2012/01/11 面试题
大学生校园创业计划书
2014/02/08 职场文书
海飞丝广告词
2014/03/20 职场文书
大学生求职信
2014/06/17 职场文书
2014年妇女工作总结
2014/12/06 职场文书
捐助感谢信
2015/01/22 职场文书
高考作弊检讨书1500字
2015/02/16 职场文书
教师思想工作总结2015
2015/05/13 职场文书
MySQL update set 和 and的区别
2021/05/08 MySQL
详解如何用Python实现感知器算法
2021/06/18 Python
Python matplotlib可视化之绘制韦恩图
2022/02/24 Python