扣丁学堂Python培训解析常见内置高效率函数用法示例

2018-08-03 10:54:57 481浏览

今天扣丁学堂Python培训老师以线下学员学习总结,小编给大家汇总了关于Python常见内置高效率函数用法。下面我们一起来看一下吧。



1.、ilter(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	
 

【关注微信公众号获取更多学习资料】

查看更多关于“Java开发资讯”的相关文章>>


标签: Python培训 Python视频教程 Python学习视频

热门专区

暂无热门资讯

课程推荐

微信
微博
15311698296

全国免费咨询热线

邮箱:codingke@1000phone.com

官方群:148715490

北京千锋互联科技有限公司版权所有   北京市海淀区宝盛北里西区28号中关村智诚科创大厦4层
京ICP备12003911号-6   Copyright © 2013 - 2019

京公网安备 11010802030908号