def
return
def avg(x):
mean_x = sum(x) / len(x)
return mean_x
a=avg([23, 24, 13, 34, 56, 78])
全局变量与局部变量
全局变量是在整个py文件中声明,全局范围内都可以访问
局部变量是在某个函数中声明的,只能在该函数中调用它
total = 0
def sum(para1,para2):
total = para1 + para2
print (‘Inside the function local total:’, total)
return total
sum(10,20)
print (“outside the function global total:”, total)
匿名函数lambda
g = lambda x: x + 1
g(10)
g=lambda x,y:x+y
g(1,2)
g = lambda x: x ** 2
[g(x) for x in [1, 2, 3, 4, 5]]
filter函数
用于过滤序列,过滤掉不符合条件的元素,返回由符合条件元素组成的新列表。该接收两个参数,第一个为函数,第二个为取值范围。
在range(0,20)之间,找到偶数
list(filter(lambda x: x%2==0,range(20)))
Map函数(每个取值都会返回结果)
提供的函数对指定序列做映射
list(map(lambda x:x%2,range(20)))
list(map(lambda x,y:(x*y,x+y),[1,2,3],[4,5,6]))
reduce函数(最后直接出一个数)从前两个参数开始算
from functools import reduce
#redduce对整个列表计算累加或者累积
reduce(lambda x,y:x+y,[1,2,3,4]) 1+2 3+3 6+4
reduce(lambda x,y:xy,range(1,6)) 12 23 64 25*5
reduce(lambda x,y:x+y,[1,2,3,4],10) 1+10 11+2 13+3 16+4
计算100以内自然数之和
reduce(lambda x,y:x+y,range(101))