我不太明白为什么Python会自动将函数返回给我的任何0转换为None对象.我用几乎所有的常用语言进行编程,但我以前从未遇到过这种情况.我希望如果我在结果中设置0,我会从函数中得到0.
任何人都可以解释为什么Python这样做?
编辑:
为了提供更多信息,我们有一个C++类的包装器,返回值类型是一个void指针.因此,如果它返回一个值为0的整数,它会给我一个None类型.这对任何人都有意义吗?
我只是Python的新手,并试图找出我可能期望的无类型而不是返回值.
我们有一个C++类的包装器,返回值类型是一个void指针.因此,如果它返回一个值为0的整数,它会给我一个None类型
0是NULLC++中指针的值(尽管你应该将其称为NULL).
如果你有一个C++函数返回void*类型并且你返回0,你就会有效地返回NULL,因此你将返回NonePython.
您可能对此问题感兴趣:对C++中的指针使用NULL或0(零)吗?(也见nullptr).