@函数
一、函数的作用
函数就是将⼀段具有独⽴功能的代码块 整合到⼀个整体并命名,在需要的位置调⽤这个名称即可完成对
应的需求
函数在开发过程中,可以更高效的实现代码复用
二、函数的使用步骤
2.1定义函数
def 函数名(参数):
代码1
代码2
…
2.2调用函数
函数名(参数)
注意:
1.不同的需求,参数可有可无
2.在python中,函数必须先定义再使用
2.3快速体验
需求:复现ATM取钱功能。
- 搭建整体框架(复现需求)
在这里print('密码正确登录成功')
# 显示"选择功能"界⾯
print('查询余额完毕')
# 显示"选择功能"界⾯
print('取了2000元钱')
# 显示"选择功能"界⾯
2.“选择功能”界面内容
print('查询余额')
print('存款')
print('取款')
3.封装“选择功能”
一定要先定义函数,后调用函数
# 封装ATM功能选项 --定义函数
def select_func():
print('-----请选择功能-----')
print('查询余额')
print('存款')
print('取款')
print('-----请选择功能-----')
4.调用函数
在需要显示“选择功能”函数位置调用函数
print('密码正确登录成功')
# 显示”选择功能“界面 --调用函数
select_func()
print('查询余额完毕')
# 显示“选择功能”界面 -调用函数
select_func()
print('取了2000元')
# 显示“选择功能”界面 -调用函数
select_func()
三、函数的参数作用
思考:完成需求如下:⼀个函数完成两个数1和2的加法运算,如何书写程序?
# 定义函数
def add_num1():
result = 1 + 2
print(result)
# 调用函数
add_num1()
思考:上述add_num1函数只能完成数字1和2的加法运算,如果想要这个函数变得更灵活,可以计算任
何⽤户指定的两个数字的和,如何书写程序?
分析:⽤户要在调⽤函数的时候指定具体数字,那么在定义函数的时候就需要接收⽤户指定的数字。函
数调⽤时候指定的数字和定义函数时候接收的数字即是函数的参数
# 定义函数时同时定义了接收用户数据的参数a和b,a和b是形参
def add_num2(a,b):
result = a + b
print(result)
# 调用函数时传入真实的数据10,20,真实数据为实参
add_num2(10,20)
四、函数的返回值作用
例如:我们去超市购物,⽐如买烟,给钱之后,是不是售货员会返回给我们烟这个商品,在函数中,如
果需要返回结果给⽤户需要使⽤函数返回值
def buy():
return '烟'
# 使用变量保存函数返回值
goods = buy()
print(goods)
4.1 应用
需求:制作⼀个计算器,计算任意两数字之和,并保存结果
def sum_num(a,b):
return a + b
# 用result变量保存函数返回值
result = sum_num(1,2)
print(result)
五、函数的说明文档思考:定义⼀个函数后,程序员如何书写程序能够快速提示这个函数的作⽤?
答:注释
思考:如果代码多,我们是不是需要在很多代码中找到这个函数定义的位置才能看到注释?如果想更⽅
便的查看函数的作⽤怎么办?
答:函数的说明⽂档
函数的说明文档也叫函数的文档说明
5.1语法
定义函数的说明文档
def 函数名(参数):
"““说明文档的位置””
代码
…
查看函数的说明文档
help(函数名)
5.2 快速体验
def sum_num(a,b):
"""求和函数"""
return a + b
help(sum_num)
执行结果
六、函数嵌套调用
所谓函数嵌套指的是一个函数里又调用了另外一个函数
def testB():
print('----testB start----')
print('这里是testB函数执行的代码...(省略)...')
print('---testB end ---')
def testA():
print('---testA start---')
testB()
print('---testA end---')
testA()
执行效果
如果在函数A中,调用另外一个函数B,那么先把函数B中的任务都执行完才会回到上次函数A执行的位置
七、函数的应用
7.1 打印图形
1.打印一条横线
def print_line():
print('_' * 20)
print_line()
2.打印多条 横线
def print_line():
print('_'* 20)
def print_lines(num):
i = 0
while i < num:
print_line()
i += 1
print_lines(5)
执行结果:
7.2 函数计算
1.求三个数之和
def sum_num(a,b,c):
return a+b+c
result = sum_num(1,2,3) #6
print(result)
2.求三个数的平均数
def average_num(a, b, c):
sumResult = a + b + c
return sumResult / 3
result = average_num(1, 2, 3)
print(result) # 2.0
八、总结
函数的作用:封装代码,⾼效的代码重⽤
函数使⽤步骤:
定义函数
def 函数名():
代码1
代码2
…
调用函数
函数名()
函数的参数:函数调⽤的时候可以传⼊真实数据,增⼤函数的使⽤的灵活性
形参:函数定义时书写的参数(⾮真实数据)
实参:函数调⽤时书写的参数(真实数据
函数的返回值
作⽤:函数调⽤后,返回需要的计算结果
写法
return 表达式
函数的说明⽂档
作⽤:保存函数解释说明的信息
写法
def 函数名():
“”" 函数说明⽂档 “”"
函数嵌套调⽤:⼀个函数内部嵌套调⽤另外⼀个函数
初学尚浅,请多指教