python函数的基础知识
用一个名字来封装具有某种功能的代码块
- 减少重复
- 方便修改
- 保持代码一致性
1 def 函数名(参数列表) 2 代码块 3 return 返回值
函数名(参数)
注意:无需传入参数时,参数可不用填写
注意:封装时参数放置顺序为必填→选填→无名不定长→有名不定长; 调用时参数需按照顺序填写,只有选填参数时,可通过关键字填写,而不考虑顺序
1 def 函数名(name, age) 2 代码块 3 return 返回值 4 5 函数名("xiaokai", 21)
1 def 函数名(name, age, sex="男") 2 代码块 3 return 返回值 4 5 函数名("xiaokai", 21) 6 函数名("xiaohong", 20, sex="female")
3.1 无名不定长
1 def 函数名(name, age, sex="男", *args) 2 代码块 3 return 返回值 4 5 函数名("xiaokiai", 21, sex="男") 6 函数名("xiaokiai", 21, sex="男", 80000, "huizhou")
注意:函数内部,以元组的形式,接收传入的参数, 参数数量为[0-∞]
3.2 有名不定长
1 def 函数名(name, age, sex="男", *args, **kwargs) 2 代码块 3 return 返回值 4 5 函数名("xiaokiai", 21, sex="男", 80000, "huizhou", hobby="lol", interest="learning")
注意:函数内部,以字典的形式,接收传入的参数, 参数数量为[0-∞]
- 结束函数
- 返回某个对象,返回多个对象时,会被封装成元组返回
注意:如果函数未加return关键字,执行完代码块后,程序会自动加上return语句,并返回None
lambda a,b:a+b #a,b为传入参数,a+b为代码块
定义:有函数名作为参数输入,或者返回一个函数名的函数,叫做高阶函数
示例:
1 def square(n): 2 return n*n 3 4 def square_sum(a, b, func): 5 return func(a)+func(b) 6 7 square_sum(a, b, square)
注意:函数名和变量名一样都是一个容器,里面存放着对应内容的内存地址,所以函数名也可像变量名一样进行重新赋值,作为参数传入或者作为返回值返回。

浙公网安备 33010602011771号