我是道 发表于 2024-8-31 11:49:56

这两个指的是一个东西吗

为什么上面写的是myfunc,在下面调用时出现的是func
def myfunc():
    print('正在调用myfunc')
   
def report(func):
    print('主人,我要开始调用函数啦')
    func()
    print('主人,我调用完函数啦,快夸夸我')

FishC 发表于 2024-8-31 12:00:25

是的,在这个例子中,`myfunc`和`func`指的是同一个东西。

在调用时,你需要将`myfunc`传递给`report`函数。例如:

report(myfunc)

这里发生的事情是:

1. `myfunc`是定义好的函数。
2. `report`函数接受一个参数`func`,这个参数可以是任何函数。
3. 当你调用`report(myfunc)`时,`report`函数接收到的`func`参数就是`myfunc`函数。
4. 然后`report`函数内部调用`func()`时,实际上就是在调用`myfunc()`。

这样,你就可以用一个函数 (`report`) 来包装或修饰另一个函数 (`myfunc`)。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。

tommyyu 发表于 2024-9-1 21:42:50

func 是传进来的参数
页: [1]
查看完整版本: 这两个指的是一个东西吗