一、了解函数
1、函数的作用 :
将一段具有独立功能的代码块整合成一个整体并命名,在需要的位置调用这个函数,更高效的实现代码重用。
2、函数的使用步骤:
- 定义函数
- 调用函数
注意:函数要先定义才能调用,否则报错;定义函数时代码不执行,调用时才执行。
3、函数参数的作用:
接收用户指定的数据,让函数变得更加灵活
形参:函数定义时书写的参数(非真实数据)
实参:函数调用时书写的参数(真实数据)
4、函数返回值:
函数调用后,返回需要的计算结果
5、函数的说明文档:
- 查看函数说明文档: help(函数名)
-自定义函数时,函数说明可写在函数体第一行,用三引号引起来
6、函数的嵌套:
一个函数体里面调用另外一个函数
二、函数实操
1、定义函数
语法:
def 函数名(参数):
代码1
代码2
代码:
# 函数的参数可有可无,根据具体需求而定
def add_num1():
print('1+2=3')
2、调用函数
语法:
函数名(参数)
代码:
add_num1() # 1+2=3
3、定义带参函数
语法:
def 函数名(参数):
代码1
代码2
......
代码:
定义带参函数(此处的参数为形参,相当于占位符)
def add_num2(a, b):
print(f'{a}+{b}={a + b}')
4、调用带参函数
语法:
函数名(参数)
代码:
add_num2(2, 3) # 2+3=5
5、函数的返回值
语法:
单个返回值: return 表达式
多返回值时: return 表达式1,表达式2,......
- 单个返回值
代码:
def add_num2(a, b):
return a + b
# 使用变量来接收函数的返回值
num1 = add_num2(4, 5)
print(num1) # 9
使用return表示,退出当前函数,如果当前函数有代码块在return后面,将不会再执行。
def add_num2(a, b):
return a + b
print('不会被执行')
#调用函数
num1 = add_num2(4, 5)
print(num1) # 9
只返回了a+b的值,没有打印’不会被执行’。
- 多个返回值
return返回多个数据时,默认返回的是元组类型的数据,还可以返回字典、列表
def test1():
return 5, 6, 7
result = test1()
print(result) # (5, 6, 7) 返回的是元组类型的数据
# 使用多变量去接收各参数
a, b, c = test1()
print(a) # 5
print(b) # 6
print(c) # 7
# 返回多个数据之列表
def test2():
return [5, 6, 7]
6、函数说明文档
6.1、查看函数的文档说明
help(函数名)
作用:快速了解函数的用途
help(len)
out:
len(obj, /)
Return the number of items in a container.
6.2、制作函数的文档说明
自定义函数时,函数说明可写在函数体第一行,用三个引号引起来(三个单引号或者双引号都可以)
def add_num2(a, b):
'''
两数相加
:param 参数1:
:param 参数2:
:return 返回值:
'''
return a + b
然后就可使用help(add_num2) 查看函数add_num2的文档说明了。
7、函数的嵌套使用
一个函数体内调用了另外一个函数
'''
实例1:利用函数嵌套实现打印多条横线
1.1、打印一条横线
1.2、打印多条(多行)
'''
# 打印一条横线
def print_line():
print('_'*30)
# 循环打印横线
def print_lines(line):
i = 1
while i <= line:
print_line()
i += 1
print_lines(5)
'''
实例2:利用函数嵌求三个数字的平均值
1.1、求三个数字之和
1.2、和/3 ,求平均值
'''
# 三数相加
def num_sum(a, b, c):
return a + b + c
# 三个数的平均值
def num_avg(a, b, c):
sum1 = num_sum(a, b, c)
avg1 = sum1 / 3
return avg1
a = num_avg(2, 4, 6)
print(a) # 4.0
out:
______________________________
______________________________
______________________________
______________________________
______________________________
4.0