時刻の扱いを復習する

時刻は地域により異なるから面倒だ。
import datetime
tz = datetime.timezone.utc # タイムゾーンを標準時にする
tz = datetime.timezone(datetime.timedelta(hours=+9)) # タインゾーンを標準時から+09:00に合わせる
#tz = datetime.timezone(datetime.timedelta(hours=+9), 'JST') # タインゾーンを標準時から+09:00に合わせ、JSTと名づける
print('Timezone:', tz)
#dt = datetime.datetime.now() # 現在の時刻をローカルの時間で取得する
dt = datetime.datetime.now(tz) # 現在の時刻をタイムゾーンの時間で取得する
print(dt)
dt -= datetime.datetime.resolution # 分解能(通常は1.0*10^-6 sec.)分を引く
print(dt)
dt = dt.replace(year=2018, month=5) # 2018年05月の同じ時刻を取得する
print(dt)
pytzを使うとタイムゾーンは楽に書ける。
# pip install pytz
import datetime
from pytz import timezone
zone = 'Asia/Tokyo'
#zone = 'UTC' # 標準時
tz = timezone(zone)
print('Timezone:', tz)
OSに設定されたタイムゾーンを取得するならばtzlocalを使う。
# pip install tzlocal
import tzlocal
tz = tzlocal.get_localzone()
print('Timezone:', tz)
2020/08/23 14:41
タグ