python: jak obsługiwać znaczniki czasu (ISO8601)
Mam do czynienia w Pythonie z łańcuchami reprezentującymiiso8601 znaczniki czasu.
Mój ciąg znaczników czasu ma zatem następującą postać:
timestamp = "2011-08-18T10:29:47+03:00"
Obecnie konwertuję je w Pythonie za pomocą:
timestamp = timestamp[:-6]
timestamp = datetime.datetime.strptime(timestamp, "%Y-%m-%dT%H:%M:%S")
Ale w ten sposób tracę wszystkie informacje o strefie czasowej. Widziałem wiele przykładów na s-o dotyczących znaczników czasu i pythona, niestety nikt nie zachował również strefy czasowej lub po prostu odzyskał opóźnienie w strefie czasowej za pomocą:
delay = timestamp[-6:]
Próbowałem też:
timestamp = "2011-08-18T10:29:47+03:00"
timestamp = datetime.datetime.strptime(timestamp, "%Y-%m-%dT%H:%M:%S%z")
ale wrócił
ValueError: 'z' is a bad directive in format '%Y-%m-%dT%H:%M:%S%z'
Czy możesz dać jakiś wgląd?