2024-03-29 14:29:11 发布
网友
我想知道在不需要的时候跳过return None是否是不好的方式。
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)
在这两种情况下,当条件为false时,函数将返回None。
None
是和不是
在最简单的情况下,跳过“return None”是可以的,因为它只在单个负条件下返回None。
但如果存在嵌套条件求值和多个函数不能返回任何值的情况。我倾向于将它们作为场景的可视化文档来包含。
[编辑:基于以下评论]
return or return None
我更喜欢“return None”而不是光秃秃的“return”因为它是显式的,稍后,没有人会怀疑返回是否意味着不返回,或者是因为缺少了什么而出错。
为了解释其他人所说的,如果函数应该返回一个值,我使用return None。在Python中,所有函数都返回一个值,但我们通常只编写一个不返回值的函数,因为它们的返回值被忽略。在某些语言中,这些称为过程。
因此,如果一个函数应该返回一个值,那么我确保所有代码路径都有一个返回,并且返回有一个值,即使它不是。
如果一个函数“不”返回一个值,也就是说,如果它从来没有被使用它的返回值的人调用过,那么结束时不返回是可以的,如果我需要提前返回,我使用的是空表单,return。
return
就像你说的,return None几乎不需要。
但是您应该考虑到,使用显式的return None,代码的意图要清楚得多。记住:一段代码也需要人类可读,而显式通常会有帮助。
是和不是
在最简单的情况下,跳过“return None”是可以的,因为它只在单个负条件下返回None。
但如果存在嵌套条件求值和多个函数不能返回任何值的情况。我倾向于将它们作为场景的可视化文档来包含。
[编辑:基于以下评论]
我更喜欢“return None”而不是光秃秃的“return”因为它是显式的,稍后,没有人会怀疑返回是否意味着不返回,或者是因为缺少了什么而出错。
为了解释其他人所说的,如果函数应该返回一个值,我使用
return None
。在Python中,所有函数都返回一个值,但我们通常只编写一个不返回值的函数,因为它们的返回值被忽略。在某些语言中,这些称为过程。因此,如果一个函数应该返回一个值,那么我确保所有代码路径都有一个返回,并且返回有一个值,即使它不是。
如果一个函数“不”返回一个值,也就是说,如果它从来没有被使用它的返回值的人调用过,那么结束时不返回是可以的,如果我需要提前返回,我使用的是空表单,
return
。就像你说的,
return None
几乎不需要。但是您应该考虑到,使用显式的
return None
,代码的意图要清楚得多。记住:一段代码也需要人类可读,而显式通常会有帮助。相关问题 更多 >
编程相关推荐