Python----在函数中调用函数

文章详细讲解了如何在函数中调用其他函数,如`print_many`和`print_twice`的使用,以及参数的传递过程。通过Debug方法探索代码执行步骤,帮助理解函数参数流向和调用流程。
摘要由CSDN通过智能技术生成

# 函数基础

# 调用函数

# Calling Functions Within Functions

The body of a function can contain anything, including function calls.

                                                                                                -- futurecoder

# 1 我们从下列函数入手,来看看在函数中调用函数,是如何进行的?

def print_many(n, thing):
    for _ in range(n):
        print(thing)
    
def print_twice(x):
    print_many(2, x)
    
print_twice("Hello")

-- 1 案例解析, 以下既是在print_twice函数中调用print_many函数,以及参数传递的过程。如果一遍看不懂,就多看几遍。

1 | def print_many(n, thing):
5 | def print_twice(x):
8 | print_twice("Hello")
     >>> 调用print_twice函数 line 5
     ...... x = 'Hello'
        5 | def print_twice(x):
        6 |     print_many(2, x)
         >>> 调用 print_many函数 line 1
         ...... n = 2
         ...... thing = 'Hello'
            1 | def print_many(n, thing):
            2 |     for _ in range(n):
         .......... _ = 0
            3 |         print(thing)
Hello
            2 |     for _ in range(n):
         .......... _ = 1
            3 |         print(thing)
Hello
            2 |     for _ in range(n):
         <<< print_many函数返回值: None
        6 |     print_many(2, x)
     <<< print_twice函数返回值: None
    8 | print_twice("Hello")

-- 1 我们再来详细的分析下,运用Debug的方式进入到这段代码内部一探究竟。

第一步,程序从第一行开始执行代码,我们告诉程序我们新建了两个函数对象,并给函数传值 

如图所示,Frams代表电脑的存储器,存储这两个函数print_many和print_twice,Objects代表函数对象,也就是函数本身。

第二步,开始调用print_twice函数,并给参数X赋值"Hello"

第三步,开始调用print_many函数,并给参数N和thing分支赋值2,"Hello"

第四步,开始执行for循环,到这里就回到我们熟悉的地方,开始从0迭代,迭代两次,则输出两次"Hello"。

        至此,程序运行结束,主要是理解函数参数的传递,对参数流向哪里要重点知道。不要被程序的表象迷惑。

  • 5
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值