Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from datetime import datetime
- failure_sensors = [
- {'id': 45696, 'starting_date': datetime(2024, 1, 5), 'ending_date': datetime(2024, 1, 20), 'update_date': datetime(2024, 2, 6)},
- {'id': 45603, 'starting_date': datetime(2023, 10, 31), 'ending_date': datetime(2023, 12, 29), 'update_date': datetime(2024, 1, 29, 12, 43, 10)},
- {'id': 45497, 'starting_date': datetime(2023, 10, 28), 'ending_date': datetime(2023, 12, 31), 'update_date': datetime(2024, 1, 29, 12, 31, 30)},
- {'id': 45397, 'starting_date': datetime(2023, 10, 28), 'ending_date': datetime(2023, 12, 31), 'update_date': datetime(2024, 1, 29, 11, 47, 12)},
- {'id': 45319, 'starting_date': datetime(2023, 10, 30), 'ending_date': datetime(2023, 12, 14), 'update_date': datetime(2024, 1, 29, 10, 45, 30)}
- ]
- prev_starting_date = None
- min_start_date = failure_sensors[0]["starting_date"]
- max_end_date = failure_sensors[0]["ending_date"]
- for f_s in failure_sensors:
- if not f_s["ending_date"]:
- continue
- if prev_starting_date:
- delta_days = abs((prev_starting_date - f_s["ending_date"]).days)
- if delta_days < 28:
- print(f_s["starting_date"])
- print(max_end_date)
- print('----')
- print(f_s["ending_date"])
- print(min_start_date)
- print('----')
- # print(f_s["starting_date"] <= max_end_date and min_start_date <= f_s["ending_date"])
- # if f_s["starting_date"] <= max_end_date and min_start_date <= f_s["ending_date"]:
- if f_s["starting_date"] < min_start_date:
- min_start_date = f_s["starting_date"]
- if f_s["ending_date"] > max_end_date:
- max_end_date = f_s["ending_date"]
- prev_starting_date = f_s["starting_date"]
- print(min_start_date)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement