2016-03-19 6 views
2

UNIXタイムスタンプ(ミリ秒単位)をHH:MM:SSに変換する必要があります。私はこれをしようとした場合:UNIXタイムスタンプ(ミリ秒)からPythonでHH:MM:SSに変換する

import datetime 
var = 1458365220000 
temp = datetime.datetime.fromtimestamp(var).strftime('%H:%M:%S') 
print (temp) 

それはない作品をしています、と私は取得していますエラーがされている。

OSError: [Errno 22] Invalid argument

答えて

4

エラーが外の数をプッシュするミリ秒によるものです32ビット整数の範囲。 datetime.datetime.fromtimestampは、最初の引数が秒のの番号であると予想しています。これは、UNIXエポックの開始以降です。しかし、浮動小数点数として与えられた秒数を処理することができます。このように、あなたがしなければならないすべては、1000で、あなたのタイムスタンプを分割することである。また、あなたのフォーマットされた文字列でミリ秒を含めたい場合は

import datetime 
var = 1458365220000 
temp = datetime.datetime.fromtimestamp(var/1000).strftime('%H:%M:%S') 
print (temp) 

、次の形式を使用します。'%H:%M:%S.%f'

+0

*感謝*非常に! – MarcoBuster

関連する問題