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内置数据类型详解
Aug 18 Python
完美解决安装完tensorflow后pip无法使用的问题
Jun 11 Python
python调用tcpdump抓包过滤的方法
Jul 18 Python
Python PIL读取的图像发生自动旋转的实现方法
Jul 05 Python
Python实现把多维数组展开成DataFrame
Nov 30 Python
一文解决django 2.2与mysql兼容性问题
Jul 15 Python
python 使用cycle构造无限循环迭代器
Dec 02 Python
五分钟学会怎么用Pygame做一个简单的贪吃蛇
Jan 06 Python
Python Pygame实现俄罗斯方块
Feb 19 Python
python学习之panda数据分析核心支持库
May 07 Python
8g内存用python读取10文件_面试题-python 如何读取一个大于 10G 的txt文件?
May 28 Python
Python Pygame实战在打砖块游戏的实现
Mar 17 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
收音机史话 - 1960年代前后的DIY
2021/03/02 无线电
为查询结果建立向后/向前按钮
2006/10/09 PHP
用PHP实现的随机广告显示代码
2007/06/14 PHP
php 表单提交大量数据发生丢失的解决方法
2014/03/03 PHP
Zend Framework框架之Zend_Mail实现发送Email邮件验证功能及解决标题乱码的方法
2016/03/21 PHP
php实现微信扫码自动登陆与注册功能
2016/09/22 PHP
Yii2框架类自动加载机制实例分析
2018/05/02 PHP
thinkPHP5框架auth权限控制类与用法示例
2018/06/12 PHP
thinkphp5+layui实现的分页样式示例
2019/10/08 PHP
使用javascript访问XML数据的实例
2006/12/27 Javascript
使用jQuery轻松实现Ajax的实例代码
2010/08/16 Javascript
基于jquery的复制网页内容到WORD的实现代码
2011/02/16 Javascript
Array.prototype.concat不是通用方法反驳[译]
2012/09/20 Javascript
js使下拉列表框可编辑不止是选择
2013/12/12 Javascript
Javascript堆排序算法详解
2014/12/03 Javascript
JS基于myFocus库实现各种功能的tab选项卡切换效果
2015/09/19 Javascript
使用bootstrap typeahead插件实现输入框自动补全之问题及解决办法
2016/07/07 Javascript
使用JavaScript解决网页图片拉伸问题(推荐)
2016/11/25 Javascript
es7学习教程之fetch解决异步嵌套问题的方法示例
2017/07/21 Javascript
vue实现留言板todolist功能
2017/08/16 Javascript
ES2020 已定稿,真实场景案例分析
2020/05/25 Javascript
Python文件和目录操作详解
2015/02/08 Python
完美解决Python2操作中文名文件乱码的问题
2017/01/04 Python
Python实现批量修改图片格式和大小的方法【opencv库与PIL库】
2018/12/03 Python
python3+opencv3识别图片中的物体并截取的方法
2018/12/05 Python
pytorch 计算Parameter和FLOP的操作
2021/03/04 Python
纯CSS3代码实现文字描边
2016/04/25 HTML / CSS
HTML5+CSS3 诱人的实例:3D立方体旋转动画实例
2016/12/30 HTML / CSS
拉飞逸官网:Lafayette 148 New York
2020/07/15 全球购物
个人应聘自我评价分享
2013/11/18 职场文书
领导走群众路线整改措施思想汇报
2014/10/12 职场文书
教师党员学习群众路线心得体会
2014/11/04 职场文书
交通安全主题班会
2015/08/12 职场文书
2016读书月活动心得体会
2016/01/14 职场文书
在Python中如何使用yield
2021/06/07 Python
Win11软件图标固定到任务栏
2022/04/19 数码科技