Tom*_*cki 42 python function return-value
我不知道在return None
不需要的时候跳过是不好的方式.
例:
def foo1(x):
if [some condition]:
return Baz(x)
else:
return None
def foo2(x):
if [some condition]:
return Baz(x)
bar1 = foo1(x)
bar2 = foo2(x)
Run Code Online (Sandbox Code Playgroud)
在这两种情况下,当条件为假时,函数将返回None
.
rse*_*nna 60
就像你说的那样,return None
(几乎)从不需要.
但是你应该考虑到代码的意图更明确return None
.请记住:一段代码也需要人类可读,并且明确通常会有所帮助.
Ned*_*der 25
为了阐述其他人所说的内容,我使用了一个return None
if函数应该返回一个值.在Python中,所有函数都返回一个值,但通常我们编写只返回None的函数,因为它们的返回值被忽略.在某些语言中,这些称为程序.
因此,如果一个函数应该返回一个值,那么我确保所有代码路径都有一个返回值,并且返回值有一个值,即使它是None.
如果一个函数"没有"返回一个值,也就是说,如果某个人从未使用它的返回值调用它,那么没有返回就可以结束,如果我需要提前返回,我会使用裸形式,return
.
是和否.
在最简单的情况下,可以跳过 "return None",因为它仅在单个负面条件下返回None.
但是,如果存在嵌套条件评估和多个场景,其中函数可以返回None.我倾向于将它们包含在场景的可视化文档中.
[编辑:根据以下评论]
返回或返回无
我更喜欢"返回无"以显示"返回",因为它是明确的,后来,如果返回意味着返回None,那么没有人会怀疑,或者因为缺少某些内容而导致错误.