2

我正在开发一个 python c-extension,并希望创建一个带有 unix 时间戳的 python datetime 对象实例。

在文档站点(http://docs.python.org/c-api/datetime.html)上,我找到了 PyDateTime_FromTimestamp() 函数,它根据输入参数返回一个新的引用。

描述如下: 给定一个适合传递给 datetime.datetime.fromtimestamp() 的参数元组,创建并返回一个新的 datetime.datetime 对象。

我尝试使用 PyFloat_Object 调用该函数,但该函数始终返回 NULL(即使我只是输入 0)。

有人有一个例子,我必须如何调用该函数,或者可以提示需要什么样的参数元组才能使其工作?

谢谢!

4

1 回答 1

4

谢谢伊格纳西奥!有时小提示可以解决问题 - 这里是完整的工作示例:

static double doubleValue = 1314761451;  
PyObject *floatObj = NULL;  
PyObject *timeTuple = NULL;  
PyObject *dateTime = NULL;  
floatObj = PyFloat_FromDouble(doubleValue);  
timeTuple = Py_BuildValue("(O)", floatObj);  
dateTime = PyDateTime_FromTimestamp(timeTuple);
于 2011-08-31T04:09:26.197 回答