我看到一些例子,其中return
是函数中最后一个不返回任何内容的语句。这是否需要Python 3.x?
def myfunc():
result = 1 + 1
return
答案 0 :(得分:1)
返回语句不是必需的,如果函数退出而没有任何return语句,则返回None
。
证明:
引用官方文档,即Calls和The return statement:
关于退货:
return将当前函数调用与表达式列表(或None)一起作为返回值。
关于来电:
调用始终返回一些值,可能是
None
,除非它引发异常。如何计算此值取决于可调用对象的类型。如果是用户定义的函数:
执行函数的代码块,并将参数列表传递给它。代码块首先要做的是将形式参数绑定到参数;这在功能定义一节中描述。 当代码块执行return语句时,它指定函数调用的返回值。
正如我们可以从文档中得出的结论 - 除非执行显式None
语句,否则所有函数都会隐式返回return
。
答案 1 :(得分:0)
如果函数中的最后一个语句是return
,那么return
是一个值。如果没有return
语句,则不会return
任何内容。
答案 2 :(得分:0)
正如其他人所说,“不”。对于改变输入或导致副作用的函数,应省略return
或return None
,除非提前退出,在这种情况下我将使用return
。但是,我可以在这里使用return None
:
def pos(x):
if x > 0:
return x
else:
return None
这可以简化为:
def pos(x):
return x if x > 0 else None