『无为则无心』Python函数 — 28、Python函数的简单应用

时间:2021-09-08 22:49:50

1、函数嵌套调用

所谓函数嵌套调用指的是,一个函数里面又调用了另外一个函数。

(1)函数嵌套的示例

def testB():
print('---- testB start----')
print('这里是testB函数执行的代码...(省略)...')
print('---- testB end----') def testA():
print('---- testA start----')
testB()
print('---- testA end----') testA()

(2)输出结果

如下图所示:

『无为则无心』Python函数 — 28、Python函数的简单应用

(3)函数嵌套的执行流程说明

『无为则无心』Python函数 — 28、Python函数的简单应用

说明:如果函数A中,调用了另外一个函数B,那么先把函数B中的任务都执行完毕之后,才会回到上次函数A执行的位置。

2、Python函数的简单应用

(1)打印线条

1)打印一条横线

def print_line():
print('-' * 20) print_line()
"""
输出结果:
--------------------
"""

2)打印多条横线

# 1. 打印一条横线
def print_line():
print('-' * 20) # 2. 函数嵌套调用,实现多条横线
def print_lines(num):
i = 0
while i < num:
print_line()
i += 1 print_lines(5)
"""
输出结果:
--------------------
--------------------
--------------------
--------------------
--------------------
"""

(2)函数计算

1)求三个数之和

# 1. 任意三个数之和
def sum_num(a, b, c):
return a + b + c result = sum_num(1, 2, 3)
print(result) # 6

2)求三个数平均值

# 2. 任意三个数求平均值
def average_num(a, b, c):
# 先求和 再除以3
sumResult = sum_num(a, b, c)
return sumResult / 3 result = average_num(1, 2, 3)
print(result) # 2.0

(3)打印图形

# 1.打印三角形
def print_triangle1():
for i in range(8):
for j in range(0, i):
print("*", end=" ") for j in range(i, 8):
print("$", end=" ") print("") print_triangle1() """
输出结果:
$ $ $ $ $ $ $ $
* $ $ $ $ $ $ $
* * $ $ $ $ $ $
* * * $ $ $ $ $
* * * * $ $ $ $
* * * * * $ $ $
* * * * * * $ $
* * * * * * * $
""" # 2、打印三角形
def print_triangle2():
for i in range(8):
for j in range(0, 8 - 1 - i):
print("*", end=" ")
for k in range(8 - i, 8):
print("$", end=" ") print("") print_triangle2() """
输出结果:
* * * * * * *
* * * * * * $
* * * * * $ $
* * * * $ $ $
* * * $ $ $ $
* * $ $ $ $ $
* $ $ $ $ $ $
$ $ $ $ $ $ $
""" # 3、打印正三角
def print_triangle3():
for i in range(8):
for j in range(0, 8 - i):
print(end=" ")
for k in range(8 - i, 8):
print("*", end=" ") print("") # 换行 print_triangle3() """
输出结果:
*
* *
* * *
* * * *
* * * * *
* * * * * *
* * * * * * *
""" # 4、打印倒三角
def print_triangle4():
for i in range(7):
for j in range(0, i):
print(end=" ") for j in range(i, 7):
print("*", end=" ") print("") # 换行 print_triangle4() """
输出结果:
* * * * * * *
* * * * * *
* * * * *
* * * *
* * *
* *
*
"""

3、函数的说明文档

(1)函数的说明文档的作用

思考:定义一个函数后,程序员如何书写程序能够快速提示这个函数的作用?

答:用注释。

思考:如果代码多,我们是不是需要在很多代码中找到这个函数定义的位置才能看到注释?如果想更方便的查看函数的作用怎么办?

答:使用函数的说明文档。

(2)函数说明文档的语法

定义函数的说明文档:在定义函数时,可以在函数内部编写函数的说明文档。编写函数的说明文档非常简单,其实直接在函数内的第一行注释的字符串就是函数的说明文档。可以用单引号,也可以使用三引号,但是我们说明函数的时候一行会描述不清楚,通常我们会使用三引号来定义函数的说明文档。

def 函数名(参数):
""" 说明文档的位置 """
代码
......

(3)查看函数的说明文档

help(函数名)

help()是Python中的内置函数。

help()函数作用:通过help()函数可以查询Python中的函数的用法(查看函数的说明文档)。

(4)快速体验

def sum_num(a, b):
""" 求和函数 """
return a + b help(sum_num) # 函数的说明文档的高级使用
def sum_num1(a, b):
"""
求和函数sum_num1
:param a: 参数1
:param b: 参数2
:return: 返回值
"""
return a + b help(sum_num1) """
输出结果:
sum_num(a, b)
求和函数 sum_num1(a, b)
求和函数sum_num1
:param a: 参数1
:param b: 参数2
:return: 返回值
"""

(5)拓展:标准的函数说明文档

# -> int:表示返回值类型
# 参数后的:类型,表示接收此参数的类型。
def fn(a:int,b:bool,c:str='hello') -> int:
'''
这是一个文档字符串的示例 函数的作用:。。。。。
函数的参数:
a,作用,类型,默认值。。。。
b,作用,类型,默认值。。。。
c,作用,类型,默认值。。。。
'''
return 10 help(fn)

结果如下:

『无为则无心』Python函数 — 28、Python函数的简单应用