Python > 時間の処理

更新日 2015-10-18
広告
時間の処理を行う方法を紹介します。

エポック秒の取得

エポック秒を取得するサンプルコードを紹介します。
import time

print time.time()
print int(time.time())
これで、現在時刻のエポック秒を取得できます。単位は秒です。 time.time()は小数が返されます(小数点以下はミリ秒精度)。

エポック秒からdatetimeオブジェクト

エポック秒からdatetimeオブジェクトに変換するサンプルを示します。
import datetime

startTime = datetime.datetime.fromtimestamp(epochTime)
finishTime = datetime.datetime.fromtimestamp(epochTime)
epochTimeはfloatじゃないとダメなので、整数の場合はfloat変換しましょう。

datetimeからepoch秒

さきほどは逆に、datetimeオブジェクトからエポック秒を計算します。
import time
from datetime import datetime

now = datetime.now()
epoch = int(time.mktime(now.timetuple()))

print epoch # 単位は秒
print epoch * 1000000 + now.microsecond # マイクロ秒
エポック時間をマイクロ秒で取得する方法も一緒に紹介しました。

時間の差を計算する方法

datetimeオブジェクトを使い、時間の差を計算できます。
import time
from datetime import datetime

t1 = datetime.now()
time.sleep(5) # 5秒スリープ
t2 = datetime.now()

diff = t2 - t1 # 返り値diffは、timedeltaオブジェクト

print diff.seconds # t2とt1の差(秒)
print diff.microseconds
datetimeオブジェクト同士の引き算は、timedeltaオブジェクトになります。
広告
お問い合わせは sweng.tips@gmail.com まで。
inserted by FC2 system