detatimeでの時間の足し算。
importによって若干やり方が違うので注意が必要。
コードで使い方を書いていて、
引数によって加算できるdatetimeが決まってくるのでそれは下の方に書いておきました。
import datetime
import datetime
def main():
dt1 = datetime.datetime.now()
print(dt1.isoformat(timespec='seconds'))
dt2 = dt1 + datetime.timedelta(days=1)
print(dt2.isoformat(timespec='seconds'))
if __name__ == "__main__":
main()
表示はこのようになります。
1日が無事に足されました。
2020-11-28T02:38:50
2020-11-29T02:38:50
from datetime import datetime
from datetime import timedelta, datetime
def main():
dt1 = datetime.now()
print(dt1.isoformat(timespec='seconds'))
dt2 = dt1 + timedelta(days=1)
print(dt2.isoformat(timespec='seconds'))
if __name__ == "__main__":
main()
こちらも無事1日の足し算ができています。
2020-11-28T02:43:15
2020-11-29T02:43:15
timedelta 加算したい引数の指定方法
加算で指定できる引数です。
yearsとmonthsはエラーになりました。
以下が指定可能です。
datetime.timedelta(weeks=1) // 週間
datetime.timedelta(days=1) // 日
datetime.timedelta(hours=1) // 時間
datetime.timedelta(minutes=1) // 分
datetime.timedelta(seconds=1) // 秒
datetime.timedelta(milliseconds=1) // ミリ秒
datetime.timedelta(microseconds=1) // マイクロ秒
isoformat datetimeのフォーマット指定方法
ついでにdatetimeのフォーマットの指定方法。表示を統一したい方向け。
isoformtのtimespecの引数(表示にて、指定した部分まで表示する)
※ 除外された要素は切り捨て
datetime.isoformat(timespec=’hour’) // YYYY-MM-DDTHH
datetime.isoformat(timespec=’minutes’) // YYYY-MM-DDTHH:MM
datetime.isoformat(timespec=’seconds’) // YYYY-MM-DDTHH:MM:SS
datetime.isoformat(timespec=’milliseconds’) // YYYY-MM-DDTHH:MM:SS.sss
datetime.isoformat(timespec=’microseconds’) // YYYY-MM-DDTHH:MM:SS.mmmmmm
datetime.isoformat(timespec=’auto’)
microsecondsが0でない場合YYYY-MM-DDTHH:MM:SS.mmmmmm
microsecondsが0である場合YYYY-MM-DDTHH:MM:SS
コメント