はじめにテストデータとして
①['20:00','20:43','22:40','23:30','23:50','00:50','5:00','15:42','22:43','23:40','3:20']
②['00:50','5:00','15:42','22:43','23:40','3:20']
③['00:50','5:00','15:42','22:43','23:40']
やりたいこと
上記のように「HH:MM」しか与えられていない状況で3日間の日付を振り直したいです。
具体的に言うと配列の順序は積み重ねなので、インデックスが小さいほど時間が古いものとします。
その中で「初めの0:00までは昨日のデータ」、「0:00~23;59までは当日のデータ」、「二回目の0:00からは明日のデータ」とdatetimeを分けたいです。
## やってみたこと
下記のようなwhileで判断できるかと、ロジックを組んでみましたが0:00の部分を見つけないと「本日」と「明日」の区別がつかないことに気がつきました。
main.py
1 YESTERDAY_FLG = False 2 TODAY_FLG = False 3 TOMORROW_FLG = False 4 5# insert_dataは上記の1,2,3のデータのいずれかの時間のみの部分(hhが時間を現している) 6 7 for data in insert_data: 8 while YESTERDAY_FLG: 9 if 23 >= hh >= 9: 10 # 昨日の日付をセットする 11 else: 12 # 初回のelseで抜ける 13 YESTERDAY_FLG = True 14 15 while TODAY_FLG: 16 # TODO 0:00の切り替わりを見つけないと意味ない 17 if 0 <= hh <= 23: 18 pass 19 # 本日の日付をセットする 20 else: 21 # 初回のelseで抜ける 22 TODAY_FLG = True 23 24 while TOMORROW_FLG: 25 if 9 >= hh >= 0: 26 pass 27 # 明日の日付をセットする 28 else: 29 # 初回のelseで抜ける 30 TODAY_FLG = True 31
解決したいこと
昨日から当日の0時に切り替わる判断方法と当日から明日の0時に切り替わる判断方法をご教授いただけると嬉しいです。
よろしくお願いいたします。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。