python学习教程4

本章主要讲解map reduce filter sorted函数
# -*- coding:utf-8 -*-
from functools import reduce
#1 map函数接受两个参数 第一个参数是一个函数第二个参数是一个iterable,函数将作用在每一个序列元素上,返回一个全新的序列
def f(x):
return x*x
r = map(f,[1,2,3,4,5,6])
print r
print list(r)
#2 reduce函数把结果和序列的下一个元素做累积计算
def re(x,y):
return x+y
print reduce(re,[1,2,3])
#3 filter函数将传入的函数作用在序列上,判断是否为true,为true保留元素
list3 = [10,20,30,15,25,63]
def fi(x):
return x%2==0
print (filter(fi,list3))
#4sorted:接收一个key函数来实现自定义的排序,例如按绝对值大小排序
print sorted([15,45,62,78,20],key=abs)
#匿名函数,关键字lambda表示匿名函数,冒号前面x表示函数参数,只能有一个表达式不用谢return
nm = lambda x:x*x*x
print nm(5)