Python_从零开始学习_(21) 函数的返回值和嵌套调用

1.  函数的返回值

  • 在程序开发中,  有时候,  会希望 一个函数执行结束后告诉调用者一个结果,  以便调用者针对具体的结果做后续的处理
  • 返回值 是函数 完成工作 后,  最后 给调用者的 一个结果
  • 在函数中适用 return 关键字可以返回结果
  • 调用函数一方,  可以 使用变量 接收 函数的返回结果

注意: return 表示返回,  后续的代码都不会被执行

def sun_sum(num1, num2):
    """"两个数求和"""
    result = num1 + num2
    # 使用返回值,  告诉调用函数一方计算的结果
    return result
    # 注意: return 就表示返回, 下方的代码不会被执行

# 使用变量接收


sum_result = sun_sum(2, 5)

print("计算结果: %d" % sum_result)

2.  函数的嵌套调用

  • 一个函数里面 有调用了 另一个函数,  这就是函数嵌套调用
  • 如果函数 test2 中,  调用了另外一个函数 test1
  • 那么执行到 text1 函数时,  会先把函数 text2 中的任务都执行完
  • 才会回到 text2 中调用函数 text1 的位置,  继续执行后续的代码
def test1():
    print("*" * 5)


def test2():
    print("-" * 5)

    # 函数的嵌套调用
    test1()


test2()

3.  函数嵌套的演练 ---- 打印分割线

多变的需求 -----

需求 1 

  • 定义一个 print_line 函数能够打印 * 组成的 一条分割线
def print_line1():
    print("*" * 50)


print_line1()

需求 2

  • 定义一个函数能够打印 由任意字符组成 的分隔线
def print_line2(line):
    print(line * 50)


print_line2("-")

需求 3

  • 定义一个函数能够打印 任意重复次数 的分割线
def print_line3(line, num):
    print(line * num)


print_line3("+", 50)

需求 4 

  • 定义一个函数能够打印 5 行 的分隔线,  分割线要求符合 需求 3

提示:  工作中针对需求的变化,  不要轻易修改之前的封装好的函数

def print_line4(line, num):
    """
    打印多行分割线
    :param line: 分割线字符
    :param num: 分割线数量
    """
    row = 0
    while row < 5:
        print(line * num)

        print("")  # 换行
        row += 1


print_line4("-", 50)

需求 5

  •  定义一个函数能够自定义打印行数 的分隔线,  分割线要求符合 需求 3
def print_line3(line, num):
    print(line * num)


def print_line5(num):
    """
    :param num: 要打印的行数
    """
    row = 0
    while row < num:
        print_line3("+", 50)  # 嵌套调用
        print("")
        row += 1

print_line5(5)

猜你喜欢

转载自blog.csdn.net/jiandan1127/article/details/82982298