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

如何调用具有多返回值的Python函数的指定返回值?

正确获取函数指定返回值的方法

问题分析

  • func.a()的调用方式完全错误:func是函数对象,a是函数内部的局部变量,并非函数的属性,因此会抛出AttributeError。
  • 你的函数逻辑存在误区:a = print("text 1")中,print()函数的返回值是None,执行该行时会直接打印"text 1",随后把None赋值给a;同理b的值也是None,这和你想要获取"text 1"作为返回值的需求不符。

修正后的函数与调用方式

如果希望函数返回"text 1"和"text 2"作为可获取的返回值,而非直接打印,先调整函数:

def func():
    a = "text 1"
    b = "text 2"
    return a, b

方式1:解包赋值(忽略第二个返回值)

result_a, _ = func()
print(result_a)  # 输出:text 1

方式2:通过索引获取元组第一个元素

result_a = func()[0]
print(result_a)  # 输出:text 1

若需保留函数内打印逻辑

如果确实需要函数内部执行打印,但只想获取并输出a对应的内容,可改为返回要打印的字符串,由外部控制打印:

def func():
    a = "text 1"
    b = "text 2"
    # 若不需要内部打印,可删除以下两行
    print(a)
    print(b)
    return a, b

# 仅打印返回值a
print(func()[0])

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.23 11:42:39