python之函数基础篇

来源:互联网 发布:淘宝退货物流信息填错 编辑:程序博客网 时间:2024/05/14 11:48

【函数的定义和调用】

{按位置传参}

def  函数名(arg1,arg2,arg3,...):.....函数名(object1,obj2,arg3,...)

{按关键字传参}

def  函数名(arg1,arg2,arg3,...):    .....函数名(arg1=object1,arg3=obj2,arg2=obj3,...)

*带默认值
带默认值的参数要定义在所有不带有默认值的后面,但是如果加上按关键字传参则不会报错

def  函数名(arg1=100,arg2,arg3,...):    .....函数名(arg1=object1,arg3=obj2,arg2=obj3,...)def  函数名(arg1,arg2,arg3=100):.....函数名(obj1,obj2) 

*可变位置参数

def 函数名(*arg):  ##arg is tuple,    ....

{可变关键字参数}
传参的参数带有表示解包,形参带有表示打包
非可变参数必须要在可变参数之前

def 函数名(*arg)    ...li=[1,2,3,4]函数名(*li)   def 函数名(**kwarg)  ##函数中的kwargs是一个字典    ...d={'name':'tom','age':23}函数名(**d)def func(i,j,*args):    ...func(1,2,'1',"a","abc")

【函数的返回值】
如果在函数中没有定义return的值,那么返回值就是None
函数返回多个值时,实际是返回一个元组
函数返回值可以是任何对象,包括函数。
python中函数递归的最大深度为1000
python中应尽量避免递归,绝大多数递归都是可以转换为迭代的,迭代要比递归快很多

【高阶函数】
函数可以作为函数的参数。像这样的函数称作高阶函数
filter(函数 or None,序列) ,这里以序列是列表为例,遍历列表,调用函数,函数返回为true的时候返回当前遍历的列表元素
map(函数,序列) 列表中的所有元素都放入函数执行一次
reduce(函数,序列) 这个函数必须为两个参数
下面截图为手工实现以上三个高阶函数的代码
这里写图片描述

这里写图片描述

这里写图片描述

0 0
原创粉丝点击