函数
定义函数
def funcName(params):
return data
调用函数
….
参数默认值
def func(name="小猪",age):
do something...
可变参数
基于元组的可变参数(*)
def sum(*numbers): #numbers被认为是元组
total = 0
for number in numbers:
total+=number
return total
基于字典的可变参数(**)
def info(**info): # info被认为是字典
for key, value in info.items():
print('{0} -{1}'.format(key,value))
变量作用域
- 局部变量
- 全局变量
将局部变量提升为全局变量。
x = 10
def show():
global x
x = 20
print("x={}".format(x)) # 20 全局变量的值已经修改
函数类型
函数可以作为返回值,也可以作为参数。
过滤函数
filter(function,iterable)
# 过滤列表中所有大于50的数据。
def filterNum(x):
return x > 50
data = [10,30,50,60,70]
values = filter(filterNum,data) # filter()
print(list(values)) # [60,70]
映射函数
def doubleNum(x):
return x * 2
data = [10,30,50,60,70]
values = map(doubleNum,data)
print(list(values)) # [20, 60, 100, 120, 140]
lambda 函数
使用lambda关键字定义匿名函数。
labmda 参数列表: 函数体
data = [10,30,50,60,70]
values = map(lambda x : x * 2,data)
print(list(values)) # [20, 60, 100, 120, 140]