Handling Timezone Offsets in Date Calculations with Python's Arrow Library
I'm not sure how to approach Hey everyone, I'm running into an issue that's driving me crazy... I've been struggling with this for a few days now and could really use some help. I'm working with time-sensitive data in a web application built with Flask, and I'm using the Arrow library (version 1.2.0) to manage date and time operations. The question arises when I perform date arithmetic with timezone-aware datetime objects. For instance, when attempting to calculate the difference between two timestamps, I get unexpected results due to timezone offsets. Here's a snippet of my code: ```python import arrow date1 = arrow.get('2023-10-01 12:00:00', 'US/Pacific') date2 = arrow.get('2023-10-01 15:00:00', 'US/Eastern') timedelta = date2 - date1 print(timedelta) ``` This outputs `None`, which is not what I expect. I believed that Arrow would handle the timezone conversion automatically. Instead, I'm running into issues when the two dates are in different time zones. I tried using `date1.to('UTC')` and `date2.to('UTC')` before the subtraction, but I still get a result that doesn't reflect the actual time difference correctly. The printed output is confusing, as it doesn't show the timedelta as a proper duration. How can I correctly calculate the time difference between two timestamps in different time zones using Arrow? Is there a best practice for managing this in a Flask application? Any insights would be greatly appreciated! Am I missing something obvious? For context: I'm using Python on Windows. I've been using Python for about a year now. Am I missing something obvious? For reference, this is a production application. Thanks for taking the time to read this!