You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中如何通过函数对象调用原始函数

如何通过函数对象调用原始函数?

嘿,这事儿其实超简单!当你执行 a = fun_name 时,变量 a 已经直接指向了原始的 fun_name 函数对象——那个打印出来的 <function fun_name at 0x00000265C9B0E320> 就是函数本身的引用,你完全可以直接用 a() 来调用它,效果和直接写 fun_name() 一模一样。

举个实际的代码例子你一看就懂:

def fun_name():
    print("这是原始函数的输出!")

# 把函数对象赋值给变量a
a = fun_name
# 打印a,得到函数对象的标识
print(a)  # 输出类似 <function fun_name at 0x...>

# 直接调用a,等价于调用fun_name()
a()

运行这段代码,你会看到控制台打印出 "这是原始函数的输出!",和直接调用 fun_name() 的结果完全一致。

补充个小知识点:在Python里,函数是「一等公民」——它们本身就是对象,可以被赋值给变量、作为参数传递,甚至作为其他函数的返回值。所以 a 其实就是 fun_name 的「别名」,两个变量指向的是内存中同一个函数对象,调用其中任意一个都会执行相同的逻辑。

哪怕你的函数被装饰器包装过,只要 a 指向的是最终的函数对象,调用 a() 依然会执行对应的逻辑(包括装饰器添加的额外功能),本质上还是在调用原函数的包装版本哦。

内容的提问来源于stack exchange,提问作者Abhishek kumar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.27 19:37:39