Sometimes we would like to calculate datetime in Python.
Then we search like "Python date time calculate".
So today I introduce how to calculate datetime in Python.
datetime module
When we deal with date or time, we use datetime
module.
If you want to set fixed date, you can set it in parameters.
import datetime # Fixed datetime dt1 = datetime.datetime(2019,11,19) print(dt1) # 2019-11-19 00:00:00
If you want to set current datetime, you can use now()
method.
# Now dt1 = datetime.datetime.now() print(dt1) # 2019-11-19 22:41:03.004331
timedelta
When we calculate date or time, we can use timedelta
.
We can add or subtract fixed timedelta
with datetime.
You can get 1 day later by adding datetime.timedelta(days=1)
like below.
# Add day dt2 = dt1 + datetime.timedelta(days=1) print(dt2) # 2019-11-20 00:00:00
If you set hours=1
instead of days=1
, you can get 1 hour later datetime.
# Add hour dt2 = dt1 + datetime.timedelta(hours=1) print(dt2) # 2019-11-19 01:00:00
If you use minus (-
), you can get 1 day before datetime.
You can get same result by adding days=-1
.
# Subtract day dt2 = dt1 - datetime.timedelta(days=1) print(dt2) # 2019-11-18 00:00:00 dt2 = dt1 + datetime.timedelta(days=-1) print(dt2) # 2019-11-18 00:00:00
Complex calculation
You can set multiple parameters. So you can get complex calculation result like "1 day and 12 hours 10 minutes later".
# Add 1day 12hour 10minute dt2 = dt1 + datetime.timedelta(days=1, hours=12, minutes=10) print(dt2) # 2019-11-20 12:10:00
Other parameters are written in Python documents.
class datetime.timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=0, weeks=0)
datetime — Basic date and time types — Python 3.8.0 documentation
There are no "months" and "years".
Finally
You can calculate datetime by using following items.
- Use
datetime
module to get fixed date or time. - Use
timedelta
for calculation.