标签:结束 入参 实例 exp 表达 print 没有 python基础 result
代码可以重复使用,提高代码的利用率
保持代码一致性,易维护
可扩展性
1 def function(x): 2 ‘‘‘函数说明文档‘‘‘ 3 x += 1 4 return expression 5 function(2) 6 7 # def:定义函数的关键字 8 # function:函数名 9 # ():括号内可以设置参数,形参 10 # x += 1:泛指代码块或程序处理逻辑 11 # return expression:定义返回值 12 # function(2):传入实参
1 def greet(name): 2 ‘‘‘打招呼函数‘‘‘ 3 mes = ‘hello %s !‘%name 4 return mes 5 res = greet(‘alex‘) 6 print(res) 7 # =>hello alex !
return [expression] 语句:退出函数,函数运行到return语句就是直接退出函数,不会再继续运行函数体内return下面的语句。return返回值。
<1> 默认返回值
默认返回值:在函数体内部若无return返回值,则默认返回None,return是函数结束的标志。
1 def greet(name): 2 print(‘hello %s !‘%name) 3 print(greet(‘张三‘)) 4 # =>hello 张三 ! 5 # =>None
有1个返回值:指定了返回值
1 def greet(name): 2 print(‘hello %s !‘%name) 3 return ‘你真棒!‘ 4 print(greet(‘张三‘)) 5 # =>hello 张三 ! 6 # =>你真棒!
多个返回值:指定了多个返回值,当有多个返回值时,以元组形式返回,内含多个值
1 def greet(name): 2 print(‘hello %s !‘%name) 3 return ‘你真棒!‘,‘Are you OK!‘,‘666‘ 4 print(greet(‘张三‘)) 5 # =>hello 张三 ! 6 # =>(‘你真棒!‘, ‘Are you OK!‘, ‘666‘)
1 def calc(x,y): # x,y :形参 2 result = x+y 3 return result 4 c = calc(1,2) # 1,2:实参(具体数值) 5 print(c) 6 # =>3
位置参数:传递的实参个数与形参必须一一对应,少一个和多一个都不行,不对应会报错
1 # 一一对应 2 def position(x,y,z): 3 print(x) 4 print(y) 5 print(z) 6 position(1,2,3) 7 # =>1 8 # =>2 9 # =>3 10 11 # 不对应 12 def position(x,y,z): 13 print(x) 14 print(y) 15 print(z) 16 position(1,2,3,4) 17 # =>报错
关键字参数:对形参无需对应,但必须进行一一指定 ,少一个和多一个都不行,否则会报错
1 def key(x,y,z): 2 print(x) 3 print(y) 4 print(z) 5 key(x=1,y=2,z=3) 6 # =>1 7 # =>2 8 # =>3
位置和关键字参数混合使用:位置参数必须在左边也就是前边,关键字参数在后面,一一对应 关系,多个值会报错
1 def position_key(x,y,z): 2 print(x) 3 print(y) 4 print(z) 5 position_key(1,2,z=3) 6 # =>1 7 # =>2 8 # =>3 9 10 position(1,y=2,3) 11 # =>报错
默认参数:定义了默认形参,实参就可以不用传递,若传递会覆盖默认参数
1 def default(x,type=‘King‘): # type=‘King‘:为默认参数 2 print(x) 3 print(type) 4 default(‘hello‘) # 不对默认参数进行传递 5 # =>hello 6 # =>King 7 default(‘hello‘,‘lisi‘) # 对默认参数进行传递,会覆盖原有参数 8 # =>hello 9 # =>lisi
参数组:(**字典;*列表)传递可变长参数
1 def test(x,*args): # *:作为列表存储 2 print(x) 3 print(args) # 作为元组输出 4 test(1,2,3,4,5) 5 # =>1 6 # =>(2, 3, 4, 5) 7 8 def test(x,**kwargs): # **:作为字典存储 9 print(x) 10 print(kwargs) # 作为字典输出 11 test(1,y=2,z=3) 12 # =>1 13 # =>{‘y‘: 2, ‘z‘: 3} 14 15 def test(x,*args,**kwargs): # 可以接受多个值 16 print(x) 17 print(args) # 作为元组输出 18 print(kwargs) # 作为字典输出 19 test(1,2,3,4,5,6,7,y=2,z=3) 20 # =>1 21 # =>(2, 3, 4, 5, 6, 7) 22 # =>{‘y‘: 2, ‘z‘: 3} 23 test(1,*[1,2,3],**{‘y‘:2,‘z‘:3}) 24 # =>1 25 # =>(1, 2, 3) 26 # =>{‘y‘: 2, ‘z‘: 3}
7)参数集合实例
标签:结束 入参 实例 exp 表达 print 没有 python基础 result
原文地址:https://www.cnblogs.com/fl-blogs/p/12826182.html