python中的"if else"

fas*_*ast -4 python if-statement

def love6(a, b):
    if a==6 or b==6 or a+b==6 or abs(a-b)==6:
        return True
    return False
Run Code Online (Sandbox Code Playgroud)

我只做了python的一个return语句,因此我可以理解使用"return True",但我不明白使用"return False"?这是python中标准编程使用return语句的正确方法吗?或者这是使用return忽略一些语句行的快捷方式?

Bry*_*ley 7

默认情况下,python函数返回,None除非明确告知通过return语句执行其他操作.

显然,该函数的规范是,如果a为6则应返回True,否则返回False.如果没有第二次返回,函数将不返回False,它将返回None.

禅宗的第二条规则(PEP 20)是"明确胜过隐性".此代码通过显式返回True或False来遵循该原则,而不是依赖于None的隐式返回.


Mar*_*ers 6

如果if语句也不能匹配,return True则行执行,该代码继续第二个return声明.

如果第二个return语句不存在,则该函数将结束,并返回默认返回值None.

但功能可以简化; if语句本身使用的表达式已经在评估True或者False:

def love6(a, b):
    return a==6 or b==6 or a+b==6 or abs(a-b)==6
Run Code Online (Sandbox Code Playgroud)

if语句和两条回报完全冗余这里.