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打造出适合自己的定制化Eclipse IDE
Mar 02 Python
python生成器表达式和列表解析
Mar 10 Python
numpy自动生成数组详解
Dec 15 Python
Python+matplotlib实现华丽的文本框演示代码
Jan 22 Python
学习Python3 Dlib19.7进行人脸面部识别
Jan 24 Python
使用Python将字符串转换为格式化的日期时间字符串
Sep 01 Python
wxPython实现文本框基础组件
Nov 18 Python
python 获取字典键值对的实现
Nov 12 Python
python如何获得list或numpy数组中最大元素对应的索引
Nov 16 Python
python RSA加密的示例
Dec 09 Python
python爬虫之利用selenium模块自动登录CSDN
Apr 22 Python
用python开发一款操作MySQL的小工具
May 12 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 json与xml序列化/反序列化
2013/10/28 PHP
跟我学Laravel之快速入门
2014/10/15 PHP
ThinkPHP基于PHPExcel导入Excel文件的方法
2014/10/15 PHP
推荐几个开源的微信开发项目
2014/12/28 PHP
php实现求相对时间函数
2015/06/15 PHP
PHP中OpenSSL加密问题整理
2017/12/14 PHP
php7 图形用户界面GUI 开发示例
2020/02/22 PHP
document.open() 与 document.write()的区别
2007/08/13 Javascript
Js 随机数产生6位数字
2010/05/13 Javascript
jquery实现图片左右间隔滚动特效(可自动播放)
2013/05/08 Javascript
html+javascript实现可拖动可提交的弹出层对话框效果
2013/08/05 Javascript
JavaScript中实现最高效的数组乱序方法
2014/10/11 Javascript
JS组件Bootstrap ContextMenu右键菜单使用方法
2016/04/17 Javascript
JQuery中attr属性和jQuery.data()学习笔记【必看】
2016/05/18 Javascript
基于Bootstrap+jQuery.validate实现表单验证
2016/05/30 Javascript
关于vue-router路径计算问题
2017/05/10 Javascript
Nodejs+angularjs结合multiparty实现多图片上传的示例代码
2017/09/29 NodeJs
NodeJS模块与ES6模块系统语法及注意点详解
2019/01/04 NodeJs
使用layer弹窗提交表单时判断表单是否输入为空的例子
2019/09/26 Javascript
[01:01:41]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Magma BO3 第二场 1月31日
2021/03/11 DOTA
python备份文件的脚本
2008/08/11 Python
python原始套接字编程示例分享
2014/02/21 Python
简述Python中的进程、线程、协程
2016/03/18 Python
python多进程中的内存复制(实例讲解)
2018/01/05 Python
python3爬虫之设计签名小程序
2018/06/19 Python
matplotlib命令与格式之tick坐标轴日期格式(设置日期主副刻度)
2019/08/06 Python
Python远程linux执行命令实现
2020/11/11 Python
美津浓美国官网:Mizuno美国
2018/08/07 全球购物
IFCHIC台湾:欧美国际设计师品牌
2019/05/18 全球购物
实习销售业务员自我鉴定
2013/09/21 职场文书
大学生的网上创业计划书
2013/12/31 职场文书
《地震中的父与子》教学反思
2014/04/10 职场文书
领导班子四风表现材料
2014/08/23 职场文书
2014年酒店工作总结与计划
2014/11/17 职场文书
花木兰观后感
2015/06/10 职场文书
学生会部长竞选稿
2015/11/19 职场文书