''' 函数: >>> 重复利用的工具 >>> 可以完成特定功能的代码块,函数就是存放代码块的容器 '''
''' 1. 函数名:使用该函数的依据 2. 函数体:完成功能的代码块 3. 返回值:功能完成的反馈结果 4. 参数:完成功能需要的条件信息 '''
- 用def关键词来声明函数
def 函数名(参数们):
函数体
return '返回值'
''' 函数名:拿到函数的地址 函数名(): 拿到函数的地址,并执行函数中存放的代码块(函数体) ***** 函数名(参数):执行函数并传入参数 函数名(): 执行完毕后,会得到函数的返回值,返回值就跟普通变量一样,可以直接打印、使用、运算 ''' def fn(num): print("传入的num值:%s" % num) return '收到了' res = fn(10) # 控制台会打印:传入的num值:10 # res的值为:'收到了' # 注:函数一定要先定义在调用
四、函数分类
##### 根据参数列表划分 - 无参函数:不需外界资源 ```python def start(): print('系统启动') start() ``` - 有参函数:需要外键资源 ```python def login(usr, pwd): if usr == 'owen' and pwd == '123': print('登录通过') else: print('登录失败') login('owen', '123') ``` ##### 根据参数列表划分 - 无参函数:不需外界资源 ```python def start(): print('系统启动') start() ``` - 有参函数:需要外键资源 ```python def login(usr, pwd): if usr == 'owen' and pwd == '123': print('登录通过') else: print('登录失败') login('owen', '123') ``` ##### 根据返回值划分:return是用来结束函数的 - 空返回:返回None ```python def demo(x, y): print( x + y ) def demo(x, y): print( x + y ) return # 用来强行结束函数的(像break结束循环一样) ``` - 一值返回 ```python def demo(x, y): return x + y ``` - 多值返回 ```python def demo(x, y): return x + y, x - y, x * y, x / y # 本质就是返回装有多个值的元组 ``` ## 函数的嵌套调用 ```python # 求两个数最大值 def max_2(n1, n2): if n1 > n2: return n1 return n2 # 求三个 def max_3(n1, n2, n3): m2 = max_2(n1, n2) return max_2(m2, n3) # 求四个 def max_4(n1, n2, n3, n4): m2 = max_2(n1, n2) return max_3(m2, n3, n4) # 循环调用:在一个函数的内部调用另一个函数 ```