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

Python函数返回多个函数调用报错:tuple对象不可调用,求正确打印方法

问题分析与解决

错误原因

outside_func返回的是两个内部函数组成的元组,你把这个元组赋值给了my_func,之后尝试调用my_func(),但元组不是可调用对象,因此触发TypeError。

解决方法

方法1:分别接收两个内部函数

直接将返回的两个函数分别赋值给变量,再单独调用:

def outside_func(name = 'pink'):
    def inside_func():
        return "This is inside function"
    def inside_func2():
        return "This is inside function 2 "
    return inside_func,inside_func2

# 分别接收两个内部函数
func1, func2 = outside_func()
# 调用并打印第一个函数的返回值
print(func1())
# 调用并打印第二个函数的返回值
print(func2())

方法2:通过元组索引调用指定函数

如果不需要同时接收两个函数,可直接通过元组索引获取目标函数后调用:

def outside_func(name = 'pink'):
    def inside_func():
        return "This is inside function"
    def inside_func2():
        return "This is inside function 2 "
    return inside_func,inside_func2

my_func = outside_func()
# 调用第一个内部函数(索引为0)
print(my_func[0]())
# 或者调用第二个内部函数(索引为1)
print(my_func[1]())

内容的提问来源于stack exchange,提问作者Prathamesh Kadam

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 23:10:55