ナノ秒を含む日時文字列の解析 質問する

ナノ秒を含む日時文字列の解析 質問する

HH:MM::SS.nano_seconds 形式の時間ログファイルがいくつかあります (例: 01:02:03.123456789)。Python で datetime を作成して、時間に関する計算 (時間差の計算など) をきちんと行いたいのですが、strptime は次のような場合に便利です。マイクロ秒%f を使用します。Python の datetime および time モジュールは本当にナノ秒をサポートしていないのでしょうか?

ベストアンサー1

見ることができますソースからオブジェクトdatetimeはマイクロ秒より細かいものをサポートしていない。コメントでマイク・ペニントンが指摘したように、これはおそらくコンピュータのハードウェアクロックはそれほど正確ではないウィキペディアによればヘパトキシリン周波数は「少なくとも 10 MHz」で、これは 100 ナノ秒あたり 1 ティックを意味します。

最後の 3 桁 (おそらくあまり意味がない) を捨てても問題ない場合は、入力文字列を小数点以下 6 桁にスライスして で解析するだけで解析できます%f。そうでない場合は、減算を自分で実装する必要があるようです。


その後の更新: numpy と pandas はそれぞれ (多少異なる) タイムスタンプのサポートを備えており、ナノ秒を追跡する機能も備えています。これは多くの場合、優れたソリューションです。方法については、他の回答を参照してください。

Python 3.7以降ではtime.time_nsおよび関連する機能timeペップ564) ですが、 ではナノ秒はまだサポートされていませんdatetime

おすすめ記事