python条件的最佳实践

python条件的最佳实践,python,if-statement,pep,Python,If Statement,Pep,当谈到条件句的最佳实践时,推荐以下哪一个例子 def sum(arg1,arg2): if arg1>3: return else: return arg1+agr2 或 def总和(arg1、arg2): 如果arg1考虑使用三元表达式: def总和(arg1、arg2): 如果arg1 3 时引发异常是否有意义,不要让调用者记住检查None的返回值。但是,如果您遵循PEP8,return应该是return None,并且应该包括:“如果任何return

当谈到条件句的最佳实践时,推荐以下哪一个例子

def sum(arg1,arg2):
   if arg1>3:
     return
   else:
     return arg1+agr2

def总和(arg1、arg2):

如果arg1考虑使用三元表达式:

def总和(arg1、arg2):
如果arg1<3,则返回arg1+arg2,否则无
作为补充,如果其中一个案例是意外的或不需要的,我喜欢遵循,其中包括在执行正常逻辑之前首先检查这些案例

比如说,

def安全分区(a、b):
#检查函数定义顶部的前提条件
如果b==0:
一无所获
#检查通过,执行正常逻辑
返回a/b

我会使用第二个,但没有不必要的
else
子句。如果没有显式的
return
语句,则函数在到达函数末尾时隐式返回
None
else
在第一个语句中也不是必需的。如果你不从<代码>返回<<代码> >,你只需执行<代码>之后的下一个语句,如果,它可以是<代码>返回ARG1+ARG2。最后,我会考虑在<代码> ARG1> 3 时引发异常是否有意义,不要让调用者记住检查
None
的返回值。但是,如果您遵循PEP8,
return
应该是
return None
,并且应该包括:“如果任何return语句返回表达式,则任何未返回值的return语句都应显式地将其声明为return None,并且应在函数末尾显示一个显式return语句(如果可以访问):。因此,这取决于您遵循的样式指南。另外,请注意,这两个示例在功能上并不完全相同。如果
arg1==3
,第一个将返回
arg1+arg2
,而第二个将返回
None
。(我假设agr2是一个打字错误。)
def sum(arg1,arg2):
   if arg1<3:
     return arg1+agr2
   else:
     return