リンク > ITメモ > Python datetime

datetimeモジュール頻出メソッド

日付計算

日付と時刻の定義

import datetime
date1 = datetime.date(2000, 1, 1) # 2000年1月1日
datetime1 = datetime.datetime(2000, 1, 1, 12, 0) # 2000年1月1日12時0分

datetimeオブジェクトから日時に関する情報を抽出

datetime.year # 年
datetime.month # 月
datetime.day # 日
datetime.hour # 時刻
datetime.minute # 分
datetime.second # 秒
datetime.microsecond # マイクロ秒
datetime.tzinfo # タイムゾーン
datetime.weekday() # 月曜が0,日曜が6
datetime.isoweekday() # 月曜が1,日曜が7

経過時間の表現

datetime2 = datetime1 + datetime.timedelta(days=0, 
                                           seconds=0, 
                                           microseconds=0, 
                                           milliseconds=0, 
                                           minutes=0, 
                                           hours=0, 
                                           weeks=0)

日付表記

ストリング型で日付を表記

date_str = datetime1.strftime('%d %b, %Y')
型のフォーマットは以下の通り(下記リンク先より引用).

表記 意味
%a 曜日(短縮) Sun, Mon
%A 曜日 Sunday, Monday
%w 曜日(数字表記) 0, 1, ..., 6
%d 日(ゼロ埋め) 01, 02, ..., 31
%b 月(短縮) Jan, Feb, ..., Dec
%B January, February, ..., December
%m 月(数字表記) 01, 02, ..., 12
%y 年(下二桁) 00, 01, ..., 99
%Y 1970, 2000
%H 時(ゼロ埋め,24時間表記) 00, 01, ..., 23
%I 時(ゼロ埋め,12時間表記) 01, 02, ..., 12
%p AM or PM AM, PM
%M 分(ゼロ埋め) 00, 01, ..., 59
%S 秒(ゼロ埋め) 00, 01, ..., 59
%f マイクロ秒(ゼロ埋め) 000000, ...., 999999
%z UTCオフセット -0930, +0000, +0900
%Z タイムゾーン UTC, CEST, JST
%j 1年の中の日 001, 002, ..., 366
%U 週番号(日曜始まり) 00, 01, ..., 53
%W 週番号(月曜始まり) 00, 01, ..., 53
%c 日時形式 Tue Aug 16 21:30:00 1988
%x 日付形式 08/16/88
%X 時刻形式 21:30:00


参考リンク