Dejte si bacha. Pekne me dnes pokousaly timezony a to jsem si myslel, ze se vyznam. :-)
Django 1.11 preslo nejak vic na vyuzivani `pytz`, ktere dodava casove zony s vice informacemi a datetime.replace, ktere jsem do te doby nespravne pouzival, se mi fakt nevyplatilo... >>> import datetime >>> import pytz >>> tz = pytz.timezone('Europe/Prague') >>> tz <DstTzInfo 'Europe/Prague' PMT+0:58:00 STD> >>> # Strasidelne. :-) To mam nekde chybu, ne... >>> d_praha_naivni = datetime.datetime(2017, 6, 8, 10, 19, 52) >>> d_praha_vnuceno_blbe = d_praha_naivni.replace(tzinfo=tz) >>> d_utc_naivni = datetime.datetime.strptime('2017-06-08T08:19:52+00:00', '%Y-%m-%dT%H:%M:%S+00:00') >>> d_utc_naivni datetime.datetime(2017, 6, 8, 8, 19, 52) >>> d_utc_vnuceno_blbe = d_utc_naivni.replace(tzinfo=pytz.utc) >>> d_utc_vnuceno_blbe datetime.datetime(2017, 6, 8, 8, 19, 52, tzinfo=<UTC>) >>> d_praha_vnuceno_blbe == d_utc_vnuceno_blbe False >>> # Pritom stejny cas... lepe: >>> d_praha = tz.localize(d_praha_naivni) >>> d_praha datetime.datetime(2017, 6, 8, 10, 19, 52, tzinfo=<DstTzInfo 'Europe/Prague' CEST+2:00:00 DST>) >>> d_utc = pytz.utc.localize(d_utc_naivni) >>> d_utc datetime.datetime(2017, 6, 8, 8, 19, 52, tzinfo=<UTC>) >>> d_praha == d_utc True >>> # Konecne mi to uznal. :-) >>> d_utc == d_utc_vnuceno_blbe True >>> # Vnuceni UTC pomoci replace() zjevne vadi min... :->
_______________________________________________ Python mailing list python@py.cz http://www.py.cz/mailman/listinfo/python Visit: http://www.py.cz