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

编程中为何使用return关键字而非print语句?

为什么编程中用return返回结果,而非直接用print输出?

核心原因:

  • 结果可被复用:print只是把内容输出到控制台,输出后就无法被其他代码调用或处理。但return返回的结果可以被变量接收,用来参与后续计算、作为其他函数的参数,或者存储到数据库中。比如你提供的示例方法,返回的中间元素能被调用它的代码任意处理,换成print的话,后续逻辑根本没法利用这个值。

  • 函数职责更清晰:函数的核心是处理逻辑并产出结果,print属于I/O输出操作,把它混在函数里等于让一个函数承担两种职责,违背了单一原则。像示例里的leftElement方法,它的任务就是找到排序后的左中间元素,返回结果就够了,什么时候输出、怎么输出,应该交给调用它的代码来决定。

  • 测试调试更高效:用return的话,写单元测试可以直接断言返回值是否符合预期;要是用print,测试时得去捕获控制台输出,不仅麻烦还容易出错。比如测试这个方法,直接调用它对比返回值,比抓取打印内容要高效得多。

  • 代码复用性更强:return让函数成为一个独立的功能模块,不管是控制台程序、Web服务还是GUI应用,都能直接复用。但如果用print,这个函数就只能在需要控制台输出的场景下使用,灵活性大打折扣。

示例代码(Python):

class Solution:
    def leftElement(self, arr, n):
        arr.sort()
        if n % 2 == 0:
            return arr[(n//2)-1]
        else:
            return arr[n//2]

调用示例:

sol = Solution()
# 接收返回结果,可做后续处理
result = sol.leftElement([3,1,2,4], 4)
# 按需输出
print(result)

如果把代码里的return换成print,你会发现根本没法获取这个结果做后续操作,只能看着控制台的输出——这就是return和print最本质的区别:return是给代码用的结果,print是给人看的输出。

内容的提问来源于stack exchange,提问作者Marri.Yaswanth

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 13:46:26