Ich habe ein Datum, das ich bauen will:Python: datetime Tzinfo Dokumentation Namen Zeitzone
from datetime import datetime
from datetime import tzinfo
test = '2013-03-27 23:05'
test2 = datetime.strptime(test,'%Y-%m-%d %H:%M')
>>> test2
datetime.datetime(2013, 3, 27, 23, 5)
>>> test2.replace(tzinfo=EST)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'EST' is not defined
>> test2.replace(tzinfo=UTC)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'UTC' is not defined
ich keine Dokumentation auf der Liste der Zeitzone finden names
, die ich vergeben kann im replace.tzinfo=
Aufruf Tzinfo.
Ich habe durch das Lesen folgende und es gibt nichts:
http://docs.python.org/2/library/datetime.html#tzinfo-objects
Ich habe auch in Google gesucht.
bearbeiten: Ich folgte der Lösung von unutbu zur Verfügung gestellt, aber ich bekomme die folgende:
>>> test = '2013-03-27 00:05'
>>> test
'2013-03-27 00:05'
>>> test2 = dt.datetime.strp(test, '%Y-%m-%d %H:%M')
>>> test2
datetime.datetime(2013, 3, 27, 0, 5)
>>> est = pytz.timezone('US/Eastern')
>>> utc = pytz.utc
>>> print(est.localize(test2))
2013-03-27 00:05:00-04:00
>>> print(utc.localize(test2))
2013-03-27 00:05:00+00:00
>>> print(est.localize(test2,is_dst=False))
2013-03-27 00:05:00-04:00
>>> print(est.localize(test2,is_dst=True))
2013-03-27 00:05:00-04:00
>>>
Wie Sie selbst sehen können, wenn ich die is_dst liefern = Flag die noch Offset ‚-04: 00‘ , das ist EDT und nicht EST. Ich schätze die Hilfe. Vielen Dank.
Die Dokumentation zeigt folgendes:
Wenn Sie mit lokalen Zeiten auf Arbeit bestehen, diese Bibliothek bietet die Möglichkeit, sie eindeutig Konstruktion:
>>> loc_dt = datetime(2002, 10, 27, 1, 30, 00) >>> est_dt = eastern.localize(loc_dt, is_dst=True) >>> edt_dt = eastern.localize(loc_dt, is_dst=False) >>> print(est_dt.strftime(fmt) + '/' + edt_dt.strftime(fmt)) 2002-10-27 01:30:00 EDT-0400/2002-10-27 01:30:00 EST-0500
östlichen definiert wurde früher in der http://pytz.sourceforge.net/#problems-with-localtime
Dokumentation alseastern = timezone('US/Eastern')
Dies scheint darauf hinzuweisen, dass die is_dst= flag
sollte weiter spezifizieren, ob Tageslichtersparnis spezifiziert ist oder nicht. Ich würde gerne wissen, warum das in meinem Fall nicht funktioniert.
ich einen Fehler bekam, als ich schon versucht, diese ausgeführt wird: 'Attribute:‚Modul‘Objekt hat kein Attribut ' strptime''. Sind Sie sicher, dass Sie den Code korrekt kopiert haben? – Moshe
oops. Haben Sie datetime und tzinfo importiert? Ich werde meinen ursprünglichen Post bearbeiten, um das zu berücksichtigen. – codingknob
Mein Fehler, ich hatte 'datetime' importiert, nicht' datetime.datetime'. Vielen Dank! – Moshe