![見出し画像](https://assets.st-note.com/production/uploads/images/8851705/rectangle_large_type_2_ec041b27d2fad3b030b3095249df2888.jpg?width=1200)
Photo by
okasaka
timedeltaの計算がややこしい。pythonのつまづき。
時間はそのまま足し算・引き算できない。
intみたいにやったら対応してくれ思うがそうはいかない。
まあいいや、がんばって覚える。
#標準入力で受け取った値を、datetime型に変換する。
#6 0 みたいな値が来たとして、それを、06時00分に変換。
n = input()
t = datetime.datetime.strptime(n, '%H:%M') #strptimeで文字列をdatetime型に
"timedelta"って言わないと、時間の計算できない!
#tの値(06時00分)に、30分足したり、1時間引いたりする方法。
#結果を、新しい変数に代入する。
t_add = t + datetime.timedelta(minutes = 30) #これで30分足す
t_sab = t - datetime.timedelta(hours = 1) #これで1時間引く
#その他、timedelt(###)の###部分をいろいろ変えて、計算する。
あとは出力時のアウトプット制御
#H:M 13:13のように示す。
print(t_add.strftime("%H:%M"))
#H:M 4:8のように示す。04:08などのように、0埋めにならないように制御する。
print(t_add.strftime("%-H:%-M"))
この記事が気に入ったらサポートをしてみませんか?