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

Python 3如何将for循环输出值作为函数返回值返回

问题根因
  • Python函数未显式定义return语句时,默认返回值为None,这是注释掉函数内print语句后,变量赋值得到None的核心原因
  • 若将return写在for循环内部,第一次迭代触发return时就会直接终止函数运行,因此只会返回第一个计算值2
  • 若在循环外return单个变量z,或是用全局变量存储z,循环每一轮迭代都会覆盖z的旧值,最终只会保留最后一次计算的结果4,无法得到完整的结果序列。
修改方法

在函数内初始化一个列表作为存储容器,循环过程中把每一次的计算结果追加到列表中,等整个循环执行完成后,再返回这个完整的列表即可。
参考代码:

def adds(y):
    res = []
    for i in y:
        z = i + 1
        res.append(z)
    return res

x = [1, 2, 3]
p = adds(x)
print(p)

运行后输出为[2, 3, 4],和预期结果一致。

如果想要更精简的写法,可以直接用列表推导式实现相同逻辑:

def adds(y):
    return [i + 1 for i in y]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 01:18:49