嵌套循环跟踪

2024-06-17 12:09:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我在跟踪这组嵌套循环代码时遇到问题。这些是我的工作

  • 转到def f1(a):
  • 转到a = f1(1)
  • 变成f1(f1(1))
  • 先去掉f1,然后先解f1(1)
  • f1(1)返回f2
  • 进入def f2(b),现在是f2(1),所以f2中的参数 现在是1
  • 我迷路了

      def f1(a):
         def f2(b):
           return a + b
         return f2
    
         a = f1(1)
         b = f1(100)
    
         print (a(2))
         print (b(2))
    

Tags: 代码参数returndeff2f1嵌套循环print
2条回答

看看这个:

对于Print(a(2))

>f1(1)(2)

>f2(2)

>1+2

>3

对于Print(b(2))

>f1(100)(2)

>f2(2)

>100 + 2

>102

我想你需要解释一下你的代码

让我们从

a = f1(1)

这将返回一个f2定义,作为其作用域中值为a = 1的对象

b = f1(100)

这与上面相同,只是现在a = 100对于这个实例的作用域

最后,与

print (a(2))
print (b(2))

将值b = 2传递给上面保存的两个函数,并对它们求值,分别得到3和102

相关问题 更多 >