python: como lidar com registros de data e hora (ISO8601)

Eu tenho que lidar em python com strings representandoiso8601 timestamps.

Minha cadeia de data e hora está, portanto, no seguinte formato:

timestamp = "2011-08-18T10:29:47+03:00"

Atualmente estou convertendo-os em python usando:

timestamp = timestamp[:-6]
timestamp = datetime.datetime.strptime(timestamp, "%Y-%m-%dT%H:%M:%S")

Mas desta forma eu perco toda a informação sobre o fuso horário. Eu tenho visto muitos exemplos aqui sobre o timestamp e o python, infelizmente ninguém estava preservando o fuso horário, ou apenas recuperar o atraso do fuso horário usando:

delay = timestamp[-6:]

Eu também tentei:

timestamp = "2011-08-18T10:29:47+03:00"
timestamp = datetime.datetime.strptime(timestamp, "%Y-%m-%dT%H:%M:%S%z")

mas retornou

ValueError: 'z' is a bad directive in format '%Y-%m-%dT%H:%M:%S%z'

Você pode dar uma ideia?

questionAnswers(2)

yourAnswerToTheQuestion