第五章 函数
5.1 函数介绍
函数是组织好的,可重复使用的,用来实现特定功能的代码段
好处:将功能封装在函数内,可供随时随地重复利用;提高代码的复用性,减少重复代码,提高开发效率
5.2 函数定义
def 函数名(传入参数):
函数体
return 返回值
def say_hi():
print("我是大帅比")
say_hi()
#先定义函数,后调用函数
5.3 函数参数
传入参数的功能:在函数进行计算的时候,接受外部(调用时)提供的数据
def add(x,y):
result = x + y
print(result)
add(1,2)
注意:
1.函数定义中的参数,称之为形式参数
2.函数调用中的参数,称之为实际参数
3.函数的参数数量不限,使用逗号分隔开
4.传入参数的时候,要和形式参数一一对应,逗号隔开
5.4 函数返回值
5.4.1 函数返回值的定义
def add(x,y):
result = x + y
return result
r = add(3,4)
print(r)
注意:
函数体在遇到return后结束了,所以写在return后的代码不会执行
5.4.2 None类型
None是类型NoneType的字面量,用于表示:空的,无意义的
函数如何返回None:不使用return语句即返回None;主动return None
5.5 函数说明文档
作用:对函数进行说明解释,帮助更好地理解函数的功能
def add(x,y)
"""
函数说明
:param x:参数x的说明
:param y:参数y的说明
:return: 返回值的说明
"""
函数体
return 返回值
:param 用于解释参数
:return 用于解释返回值
5.6 函数的嵌套调用
5.6.1 函数嵌套调用
def func_b()
print("---2---")
def func_a()
print("---1---")
func_b()
print("---3---")
func_a()
5.6.2 函数嵌套调用流程
函数A中执行到调用函数B的语句,会将函数B全部执行完成后,继续执行函数A的剩余内容
5.7 变量的作用域
局部变量:定义在函数体内部的变量,即只在函数体内部生效
全局变量:在函数体外部能够生效的变量
global关键字:可以把函数内部声明变量为全局变量!
5.8 综合案例
money = 5000000
name = None
name = input("请输入您的名字:")
def query(show):
print("--------查询余额-----------")
print(f"{name},您好,您的余额:{money}")
def saving(num):
global money
money = money + num
print("--------查询余额-----------")
print(f"{name},您好,您的余额:{money}")
def get(num):
global money
money = money - num
print("--------查询余额-----------")
print(f"{name},您好,您的余额:{money}")
def main():
print("-----------主菜单----------")
print(f"{name},您好,欢迎来到黑马银行ATM,请选择操作")
print("查询余额,\t请输入1")
print("存款,\t\t请输入2")
print("取款,\t\t请输入3")
print("退出,\t\t请输入4")
return input("请输入您的选择:")
while True:
keyword_input = main()
if keyword_input == "1":
query(True)
continue
elif keyword_input == "2":
num = int(input("您想要存多少钱?请输入:"))
saving(num)
continue
elif keyword_input == "3":
num = int(input("您想要取多少钱?请输入:"))
get(num)
continue
else:
print("程序退出!")
break
ord_input == “3”:
num = int(input(“您想要取多少钱?请输入:”))
get(num)
continue
else:
print(“程序退出!”)
break