PEP8 的建议:函数中的所有 return 语句要么都应该返回一个表达式,要么都不应该返回。 如果任何 return 语句返回一个表达式,则任何不返回值的 return 语句都应明确地将其声明为 return None,并且在函数末尾(如果可到达)应存在显式 return 语句:
# 正确:
def foo(x):
if x >= 0:
return math.sqrt(x)
else:
return None
def bar(x):
if x < 0:
return None
return math.sqrt(x)
# 错误:
def foo(x):
if x >= 0:
return math.sqrt(x)
def bar(x):
if x < 0:
return
return math.sqrt(x)