datetime.now()で、
- 現在時刻
- 現在の年月日
- 現在の曜日
などを取得する方法を紹介したいと思います。
datetimeモジュールは標準ライブラリなので、特別にインストールする必要はありません。
目次
datetime.now()の使い方
datetime.now()では、
- 年
- 月
- 日
- 時間
- 分
- 秒
- マイクロ秒
- 曜日
を取得することが出来ます。
from datetime import datetime
# 現在日時のdatetimeオブジェクトを取得
datetime.now()
# 現在年の取得
datetime.now().year
# 現在月の取得
datetime.now().month
# 現在日の取得
datetime.now().day
# 現在時間(時)の取得
datetime.now().hour
# 現在時間(分)の取得
datetime.now().minute
# 現在時間(秒)の取得
datetime.now().second
# 現在時間(マイクロ秒)の取得
datetime.now().microsecond
サンプルは以下になります。
from datetime import datetime
コマンド 結果
datetime.now() 2020-05-19 15:26:50.199571
datetime.now().year 2020
datetime.now().month 5
datetime.now().day 19
datetime.now().hour 15
datetime.now().minute 26
datetime.now().second 50
datetime.now().microsecond 199571
datetime.now()の文字列フォーマット
今度日付フォーマットdatetime.now()を文字列をしてフォーマットを変更して表示することが出来ます。
from datetime import datetime
# 現在日時のdatetimeオブジェクトを取得
datetime.now()
# 現在年(4桁)の取得
datetime.now().strftime('%Y')
# 現在年(下2桁)の取得
datetime.now().strftime('%y')
# 現在月 (10 進表記)の取得 [01,12]
datetime.now().strftime('%m')
# 現在月 (月名)の取得
datetime.now().strftime('%B')
# 現在月 (短縮月名)の取得
datetime.now().strftime('%b')
# 現在日 (数字)の取得[01,31]
datetime.now().strftime('%d')
# 現在時刻(時)の取得。範囲[00,23]
datetime.now().strftime('%H')
# 現在時刻(時)の取得。範囲[00,12]
datetime.now().strftime('%I')
# 午前/午後の表示[AM,PM]
datetime.now().strftime('%p')
# 現在時刻(分)の取得[00,59]
datetime.now().strftime('%M')
# 現在時刻(秒)の取得[00,61]
datetime.now().strftime('%S')
# 現在の曜日名取得
datetime.now().strftime('%A')
# 現在の曜日名(短縮)取得
datetime.now().strftime('%a')
# 曜日(10 進表記)を取得[0 (日曜日),6]
datetime.now().strftime('%w')
# 現在何週目かを取得(日曜初め) [00,53]
datetime.now().strftime('%U')
# 現在何週目かを取得(月曜初め) [00,53]
datetime.now().strftime('%W')
# 日付を適切な形式で取得
datetime.now().strftime('%x')
# 時間を適切な形式で取得
datetime.now().strftime('%X')
# 年中の日にちを取得 [001,366]
datetime.now().strftime('%j')
# 日時を適切な形式で取得
datetime.now().strftime('%c')
# 年/月/日 時:分:秒で時間を取得
datetime.now().strftime('%Y/%m/%d %H:%M:%S')
サンプルは以下になります。
from datetime import datetime
# コマンド 結果
datetime.now().strftime('%Y/%m/%d %H:%M:%S') 2020/05/19 15:39:38
datetime.now().strftime('%Y') 2020
datetime.now().strftime('%y') 20
datetime.now().strftime('%m') 05
datetime.now().strftime('%B') May
datetime.now().strftime('%b') May (五月はMayですので短縮もMayです,一月のJanuaryはJanになります)
datetime.now().strftime('%d') 19
datetime.now().strftime('%H') 15
datetime.now().strftime('%I') 03
datetime.now().strftime('%p') PM
datetime.now().strftime('%M') 39
datetime.now().strftime('%S') 38
datetime.now().strftime('%A') Tuesday
datetime.now().strftime('%a') Tue
datetime.now().strftime('%w') 2
datetime.now().strftime('%U') 20
datetime.now().strftime('%W') 20
datetime.now().strftime('%x') 05/19/20 (月/日/年)
datetime.now().strftime('%X') 15:39:38
datetime.now().strftime('%j') 140
datetime.now().strftime('%c') Tue May 19 15:39:38 2020 (曜日 月 日 時:分:秒 年)