# 储备知识:# 函数的使用应该分为两个明确的阶段# 1. 定义阶段:只检测语法,不执行函数体代码def func(): print(‘from func‘)# 2. 调用阶段:会触发函数体代码的执行# func() #先定义后调用# 示范一# def foo():# print(‘from foo‘)# bar()# foo() # # 示范二:# def bar():# print(‘from bar‘)## def foo():# print(‘from foo‘)# bar()## foo() # # 示范三:# def foo():# print(‘from foo‘)# bar()## def bar():# print(‘from bar‘)## foo() # 示范四:def foo(): print(‘from foo‘) bar() foo() def bar(): print(‘from bar‘)
一:函数的定义三种形式‘‘‘# 有参函数def func(x): pass func(1) # 无参函数def bar(): pass bar()# 空函数# def func():# pass def auth(): pass def register(): pass def shopping(): pass def transfer(): pass def pay(): pass‘‘‘ # 二:函数调用的三种形式# register() # 语句形式 def max2(x,y): if x > y: return x else: return y # res=max2(10,20)*12 # 表达式 res=max2(max2(10,20),30) # 将函数的调用当作参数传给另外一个函数print(res)
#一: 函数的参数分为两大类:# 形式参数(形参): 在定义函数阶段,括号内定义的参数/变量名称为形参# 实际参数(实参): 在调用函数阶段,括号内传入的值/变量值称为实参# ps: 在调用函数阶段会将实参(值)的值绑定给形参(变量名),这种绑定关系只在调用函数时生效,在函数执行完毕后就会解除绑定# def func(x,y): #x=1 y=2# # x=1# # y=2# print(x,y)## func(1,2)## print(x)# print(y) # 二: 细分:# 1. 位置参数:# 1.1 位置形参: 在定义阶段,按照从左到右的顺序依次定义的形参称之为位置形参# 特点: 但凡时按照位置定义的形参,必须被传值,多一个不行少一个也不行# def func(x,y,z):# print(x,y,z) # func(1,2)# func(1,2,3)# func(1,2,3,4) # 1.2 位置实参: 在调用阶段,按照从左到右的顺序依次传入的值称之为位置实参# 特点:# 1. 与形参一一对应# def func(x,y,z):# print(x,y,z)## func(2,1,3) # 2. 关键字实参: 在调用阶段,按照key=value的形式定义的实参称之为关键字实参# 特点: 可以完全打乱顺序,但仍然能为指定的形参传值(总结:指名道姓地为指定的形参传值)def func(x,y,z): print(x,y,z) # func(x=1,y=2,z=3)# func(1,2,3)# func(z=3,y=2,x=1)# 实参的形式可以是位置实参与关键字实参混合使用,但是必须遵循原则# 1.位置实参必须放在关键字实参的前面# 2.不能对同一个形参重复传值# func(1,z=3,y=2)# func(z=3,1,y=2) #错误# func(1,z=3,x=2,y=3) #错误
原文地址:https://www.cnblogs.com/yanhui1995/p/9702914.html
时间: 2024-11-09 00:02:55