繁体   English   中英

函数Python末尾缺少“返回”

[英]Missing “return” at the end of the function Python

一个很愚蠢的问题,但是...

def gcd(a, b):
    if a < b:
        a, b = b, a
    if a == 0:
        return b
    elif b == 0:
        return a
    return gcd(b, a % b)

因此,当函数末尾没有return时,为什么代码将返回None 当递归调用ab最终等于0 ,它满足if条件吗? 然后,它应该返回非零值。

如果ab都不等于零,则前两个return语句中的任何一个都不执行。

如果没有最终的返回,控制流将到达函数的末尾而不会命中return语句,因此将返回默认值None

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM