Python - Convert string representation of date to ISO 8601

Alon Gubkin picture Alon Gubkin · Dec 16, 2010 · Viewed 72.5k times · Source

In Python, how can I convert a string like this:

Thu, 16 Dec 2010 12:14:05 +0000

to ISO 8601 format, while keeping the timezone?

Please note that the orginal date is string, and the output should be string too, not datetime or something like that.

I have no problem to use third parties libraries, though.

Answer

unutbu picture unutbu · Dec 16, 2010

Using dateutil:

import dateutil.parser as parser
text = 'Thu, 16 Dec 2010 12:14:05 +0000'
date = parser.parse(text)
print(date.isoformat())
# 2010-12-16T12:14:05+00:00