時刻(日時)の取得や変換はtimeモジュールに用意されている関数を使って行うことができます。
時刻(日時)は以下の形式で表現されます。
# 現在日時を取得
time.ctime() # => 'Wed Aug 18 23:52:55 2021'
# 指定したエポックからの秒数の日時を取得
time.ctime(time.time()) # => 'Wed Aug 18 23:54:50 2021'
time.ctime(1628778159) # => 'Thu Aug 12 23:22:39 2021'
# 上記は以下と同様
# time.asctime(time.localtime(1628778159)) # => 'Thu Aug 12 23:22:39 2021'
# 現在日時を取得
time.asctime() # => 'Wed Aug 18 23:51:44 2021'
# 指定したstruct_timeの日時を取得
time.asctime(time.localtime()) # => 'Wed Aug 18 23:54:15 2021'
strftime(format[, t])
を使うと、指定した形式で文字列の取得ができる。
第2引数はstruct_timeで省略した場合は現在時刻のlocaltime()
が指定される。
# 年月日時分秒とタイムゾーン
time.strftime('%Y/%m/%d %H:%M:%S%z') # => '2021/08/19 00:47:44+0900'
# 午前午後の文字列と12時間表記時刻
time.strftime('%p %I時') # => 'AM 12時'
# 曜日
time.strftime('%a') # => 'Thu'
time.strftime('%A') # => 'Thursday'
time.strftime('%w') # => '4' (0:日曜日,…6:土曜日)
# 月
time.strftime('%b') # => 'Aug'
time.strftime('%B') # => 'August'
# ロケールでの表示
time.strftime('%c') # => 'Thu Aug 19 00:39:38 2021'
# 年月日
time.strftime('%x') # => '08/19/21'
# 時分秒
time.strftime('%X') # => '00:46:11'
# 2桁年数
time.strftime('%y') # => '21'
# 週数と日数
time.strftime('第%U週(日曜起算) 第%W週(月曜起算) 第%j日目') # => '第33週(日曜起算) 第33週(月曜起算) 第231日目'
# タイムゾーン名称
time.strftime('%Z') # => '東京 (標準時)'
# 秒
time.time() # => 1629302004.3049362
# ナノ秒
time.time_ns() # => 1629302009858687200
# struct_time(ローカル時間)から取得
time.mktime(time.localtime()) # => 1629299532.0
time.mktime(time.localtime(1629299532.0)) # => 1629299532.0
strptime(string[, format])
を使うと時刻を示す文字列からstruct_timeを取得できる。
# 書式指定なし('%a %b %d %H:%M:%S %Y'のフォーマットで変換)
time.strptime('Thu Aug 19 00:56:58 2021')
# => time.struct_time(tm_year=2021, tm_mon=8, tm_mday=19, tm_hour=0, tm_min=56, tm_sec=58, tm_wday=3, tm_yday=231, tm_isdst=-1)
# 年月日指定
time.strptime('2021/08/19','%Y/%m/%d')
# => time.struct_time(tm_year=2021, tm_mon=8, tm_mday=19, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=231, tm_isdst=-1)
# 年月日時分秒指定
time.strptime('2021/08/19 00:59:10','%Y/%m/%d %H:%M:%S')
# => time.struct_time(tm_year=2021, tm_mon=8, tm_mday=19, tm_hour=0, tm_min=59, tm_sec=10, tm_wday=3, tm_yday=231, tm_isdst=-1)
# 現在日時(UTC)を取得
time.gmtime() # => time.struct_time(tm_year=2021, tm_mon=8, tm_mday=18, tm_hour=15, tm_min=5, tm_sec=4, tm_wday=2, tm_yday=230, tm_isdst=0)
# 指定したエポックからの秒数の日時(UTC)を取得
time.gmtime(time.time()) # => time.struct_time(tm_year=2021, tm_mon=8, tm_mday=18, tm_hour=15, tm_min=8, tm_sec=43, tm_wday=2, tm_yday=230, tm_isdst=0)
time.gmtime(1628778159) # => time.struct_time(tm_year=2021, tm_mon=8, tm_mday=12, tm_hour=14, tm_min=22, tm_sec=39, tm_wday=3, tm_yday=224, tm_isdst=0)
# 現在日時(ローカル時)を取得
time.localtime() # => time.struct_time(tm_year=2021, tm_mon=8, tm_mday=19, tm_hour=0, tm_min=5, tm_sec=6, tm_wday=3, tm_yday=231, tm_isdst=0)
# 指定したエポックからの秒数の日時(ローカル時)を取得
time.localtime(time.time()) # => time.struct_time(tm_year=2021, tm_mon=8, tm_mday=19, tm_hour=0, tm_min=9, tm_sec=31, tm_wday=3, tm_yday=231, tm_isdst=0)
time.localtime(1628778159) # => time.struct_time(tm_year=2021, tm_mon=8, tm_mday=12, tm_hour=23, tm_min=22, tm_sec=39, tm_wday=3, tm_yday=224, tm_isdst=0)
指定した秒数だけスレッドの実行を停止。
time.sleep(0.5)
time.sleep(1)
Crieitは誰でも投稿できるサービスです。 是非記事の投稿をお願いします。どんな軽い内容でも投稿できます。
また、「こんな記事が読みたいけど見つからない!」という方は是非記事投稿リクエストボードへ!
こじんまりと作業ログやメモ、進捗を書き残しておきたい方はボード機能をご利用ください。
ボードとは?
コメント