UTCNow offsetting in Python

2241 views python-3.x
4

How would I exactly go about offsetting the timestamp returned by datetime.utcnow() by any amount of time such as a day?

For example:

now = datetime.utcnow().isoformat() + 'Z'

I need the above offset by a day. Having a minor issue when my script crosses into the daylight savings time conversion but I dont need to see past it however since it loads today also it dies because the python script errors doing work on the date today now.

answered question

1 Answer

5

For full days simply use timedelta:

from datetime import datetime, timedelta

now = (datetime.utcnow() + timedelta(days=3)).isoformat() + 'Z'

print(now)

Output:

2018-11-06T16:55:06.535804Z

More info on python with timezones can be found at Python UTC datetime object's ISO format doesn't include Z (Zulu or Zero offset)

With 3.7 datetime.strptime and 'datetime.strftime' even recognize 01:30 as %z - up to 3.6 the colon would make it crash :)

posted this

Have an answer?

JD

Please login first before posting an answer.