Python嵌入如何从C/C++中获得IF-()真值测试行为?

2024-09-27 00:19:53 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图编写一个函数来返回给定PyObject的真值。这个函数应该返回与if()truth测试相同的值——空列表和字符串为False,等等。 但是我发现python没有包含头文件。最接近的是PyObject_richcomare(),第二个值为True,但如果“1”==True,则返回False。 是否有一个方便的函数来实现这一点,或者我必须针对一系列类型进行测试,并对每种可能的类型进行特殊情况的测试?if()的内部实现做什么?在


Tags: 函数字符串falsetrue类型列表if头文件
2条回答

在object.h:

PyAPI_FUNC(int) PyObject_IsTrue(PyObject *);

是吗?在

使用

int PyObject_IsTrue(PyObject *o)
如果对象o被认为是true,则返回1,否则返回0。这相当于Python表达式not o。 在

(来自Python/C API Reference Manual

相关问题 更多 >

    热门问题