Eighth 函数/
面向过程编程:1、代码重复性多 2、代码的可读性差
函数式编程:函数:一个函数是封装一个功能
1、函数的基本结构:
def date(): print('xxx') date() #函数的执行者(调用者)
函数中遇到return直接结束。
return 给函数的执行者(调用者)返回值:
单独return 返回None
return 单个值 ——> 单个值(数据类型不变)
return 一个列表 ——> 返回一个元祖(多个值)
return 多个值 ——> 可用多个对象接收(是原数据类型)
2、函数的参数:
def date(a,b): #函数的定义:形参,形式参数 print(a,b) date(1,2) #函数的执行者:实参,实际的参数 #实参: #位置参数:必须与形参角度的位置参数,从左至右一一对应
#三元运算符: ret = a if a > b else b #实际就是: if a > b : ret = a else: ret = b print(ret)
关键字参数:一一对应关键字,可以不按顺先
def date(sex,position,soft): print('%s,%s,%s' % (soft,position,sex)) date(soft='微', sex='girl', position='深圳')
混合参数(位置参数,关键字)#位置参数一定要在关键字参数前面
def date(meetplace,sex,position,soft): print('%s,%s,%s,%s' % (soft,position,sex,meetplace)) date('酒吧',soft='微', sex='girl', position='深圳')
默认参数:给形参设置默认值,通常是常用的数值,但是可以更改 #默认一定要在位置后面
def date(meetplace,sex,position,soft='微'): print('%s,%s,%s,%s' % (soft,position,sex,meetplace)) date('酒吧', sex='girl', position='深圳')
默认参数陷阱:默认参数指向的是一个容器性数据类型,该数据在内存中永远是同一个
万能参数:两个形参参数,接收所有的位置参数,关键字参数
def date(*args, **kwargs): print(args) print(kwargs) date('南山区','18~30','24',positon='深圳南山区',sex='laddyboy'

浙公网安备 33010602011771号