Python: использование PyDateTime_FromTimestamp - PullRequest
2 голосов
/ 30 августа 2011

Я работаю над расширением python c и хочу создать экземпляр объекта даты и времени python с отметкой времени unix.

На сайте документации (http://docs.python.org/c-api/datetime.html) я обнаружил функцию PyDateTime_FromTimestamp (), которая возвращает новую ссылку на основе входного параметра.

Описание выглядит следующим образом: Создание и возврат нового объекта datetime.datetime с заданным кортежем аргумента, подходящим для передачи в datetime.datetime.fromtimestamp (). Я пытался вызвать функцию с помощью PyFloat_Object, но функция всегда возвращает NULL (даже если я просто ввел 0).

Есть ли у кого-нибудь пример, как я должен вызывать функцию, или может дать подсказку, какой тип параметра необходим для его работы?

Спасибо!

1 Ответ

4 голосов
/ 31 августа 2011

Спасибо, Игнасио!Иногда небольшие подсказки делают решение - вот полный рабочий пример:

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);
...