这里主要介绍自定义函数,函数的本质是对功能的封装,当我们在实际开发中,重复或大量使用某一个功能时,就可以考虑把该功能写成函数,方便调用、修改。
1、函数的定义
定义函数格式
def 函数名(参数):
函数主体
return 表达式 #如果没有return 则默认返回None
示例:定义一个简单的求和函数add(),输入num1和num2,输出num1+num2的和
def add(num1,num2):
return num1 + num2
fun = add(1,2)
print(fun) #输出3
2、函数的参数
2.1 无参数
def fun():
print("My Name Is ZhiShuFenXi")
fun()
输出:
>>>My Name Is ZhiShuFenXi
2.2 默认参数
在调用函数时,如果没有传入参数,则使用默认参数。
注意1:如果要使用默认参数,建议将默认参数放至最后。
注意2:默认参数必须指向不变对象。
def fun(name, age = 18):
print("%s的年龄是%s" %(name,age))
fun("张三")
fun("李四",20)
输出:
>>>张三的年龄是18
>>>李四的年龄是20
2.3 可变参数
参数个数不确定,在参数前面加*号
def fun(*num):
sum = 0
for x in num:
sum += x * x
return sum
print(fun(1,2))
print(fun(1,2,3,4,5))
输出:
3、lambda表达式
lambda 表达式本质上就是一种简化的函数定义方法。
比如把之前的求和函数add()改写成lambda表达式:
add = lambda num1,num2:num1+num2;
print(add(1,2))
输出:
lambda表达式虽然简单,但是功能有限:
(1)冒号之后只能写有限的代码,只是一个表达式。
(2)lambda函数有自己的命名空间,且不能访问自由参数列表之外的参数或全局参数。
领取专属 10元无门槛券
私享最新 技术干货