python - 是否可以不从 python 中的函数返回任何内容?

标签 python python-3.x function return nonetype

考虑这段代码:

def foo(foo_input):
    if 0 <= foo_input <= 100:
        return f_input

foo_input > 100 的情况下返回 None。但它真的可以返回任何东西吗?还是函数总是要返回一些东西?


参见:return, return None, and no return at all?

最佳答案

函数总是返回一些东西(至少None,当在执行过程中没有到达返回语句并且到达函数的末尾时)。

另一种情况是当它们被异常中断时。 在这种情况下,异常处理将“支配堆栈”,您将返回到适当的 except 或得到一些讨厌的错误:)

关于您的问题,我必须说有两种可能性: 要么你有东西要返回,要么你没有。

  • 如果你有东西要返回,那么就这样做,如果没有,那就不要。
  • 如果你依赖于返回的具有某种类型的东西,但你不能返回这种类型的任何有意义的东西,那么 None 将告诉调用者这是这种情况( 没有更好的方法可以告诉调用者 None 返回“无”,所以检查一下就可以了)

关于python - 是否可以不从 python 中的函数返回任何内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10067013/

相关文章:

python - 将 pandas 数据帧的一行转换为数据帧本身(而不是一系列)?

python - 计算包含地理坐标的线串的边界框

python - 如何使用网格移动图像?

function - 在 haskell 中优雅地定义许多函数值

python - 如何通过函数传递多个函数(附加参数)并将它们输出为函数列表而不执行它们

python - 根据现有列中的某些规则在新数据框列中设置值

python - 属性错误 : module 'tensorflow' has no attribute 'assign'

python-3.x - 使用多摄像头检测 Tensorflow 对象

python - 如何使用二进制文件读取和写入值

javascript - listToArray 函数的递归版本