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 に答える