python - 为什么在python中递归调用同一个函数时要使用return

标签 python python-3.x algorithm python-2.7 data-structures

def foo(n):
    print(n)
    foo(n-1)
>>foo(5)
>>5


>>1

返回函数

def foo(n):
    print(n)
    return f(n-1)
>>5


>>1

这两个函数产生相同的结果。那么在这种情况下不使用 return 可以吗?

最佳答案

这取决于您是只想打印输出还是实际分配它。如果您只想查看您的输出,只需打印它就可以了,但您稍后将如何实际使用该输出?您可以复制并粘贴它,但这似乎效率低下...

但是,在您的情况下,您似乎只想查看递归中每个调用的输出,在这种情况下,无需分配它。

关于python - 为什么在python中递归调用同一个函数时要使用return,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48936984/

相关文章:

python - 集合和 View 之间的区别

python - 如何使用正则表达式搜索带括号的字符串?

algorithm - 如何在平面上有效分配点

algorithm - 二叉搜索树 - 搜索范围

python - 如何从互联网访问 jupyter-kernel-gateway Rest api?

python - 无法使用 winsound 模块播放 .wav 文件?

python - 带有列表的字典自定义相等性检查

Java:具有并行数组的快速排序算法

python - 计算重复字典的数量,然后附加一个计数键及其值

python - 如何从 python 脚本将数据插入到 HTML 中?