区分没有返回值和返回无

纳撒卡希尔

有没有办法区分这两个返回值?

>>> sort([1, 2, 3])
None

>>> dict(a=1).get('b')
None

第一个返回,None因为没有返回值。第二个None作为返回值返回。

克鲁梅鲁尔

一个函数return None,只是返回或允许执行到达该函数的末尾基本上是同一回事。

考虑以下功能:

def func1():
        return None

def func2():
        pass

def func3():
        return

如果现在分解函数的字节码(dis模块可以做到),我们将看到以下内容

func1():
  2           0 LOAD_CONST               0 (None)
              3 RETURN_VALUE        
func2():
  5           0 LOAD_CONST               0 (None)
              3 RETURN_VALUE        
func3():
  8           0 LOAD_CONST               0 (None)
              3 RETURN_VALUE        

功能相同。因此,即使检查功能本身,也无法区分它们。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

SetTimeout没有返回正确的值和无响应的脚本

来自分类Dev

Magento getData()没有返回值

来自分类Dev

jQuery .find()没有返回值

来自分类Dev

XML文档没有返回值

来自分类Dev

区分C中的返回值和错误

来自分类Dev

在Swift中没有返回值的函数返回

来自分类Dev

没有记录返回时,ISNULL()不返回值

来自分类Dev

用于异步函数的JavaScript回调:是否有任何模式可区分“返回值”和“异常”?

来自分类Dev

有没有办法建立返回值?

来自分类Dev

定义一个没有函数参数和返回值的 RPC

来自分类Dev

R函数,无返回值

来自分类Dev

R函数,无返回值

来自分类Dev

返回值和JProgressbar

来自分类Dev

phpDoc-没有参数或返回值

来自分类Dev

当PDO中没有行时返回值

来自分类Dev

如果没有返回值,请不要调用函数

来自分类Dev

Bash:调用函数时没有返回值

来自分类Dev

如果没有结果,则JdbcTemplate queryForList返回值

来自分类Dev

PowerShell:函数没有正确的返回值

来自分类Dev

没有返回值的条件运算符

来自分类Dev

VB.NET MySQL查询没有返回值

来自分类Dev

useMutation中的onCompleted回调没有返回值

来自分类Dev

异步/等待任务没有返回值

来自分类Dev

没有副作用的函数返回值不应忽略

来自分类Dev

没有从异步等待函数获取返回值

来自分类Dev

PowerShell:函数没有正确的返回值

来自分类Dev

php xml simpleXMLElement没有返回值

来自分类Dev

为什么没有从函数返回值?

来自分类Dev

为什么finger没有非零的返回值?