[python] Tip: Slusne me dnes pokousaly timezony
Jakub Vysoky
jakub na borka.cz
Středa Červenec 26 14:52:01 CEST 2017
Taky to tak nekde pouzivam. Pritom bych dal ruku do ohne, ze to bylo
vycucly z nejaky dokumentace.
Asi to nebyla dokumentace, ale stackoverflow :)
Dik!
On Wed, 26 Jul 2017 at 09:47, Vláďa Macek <macek na sandbox.cz> wrote:
> 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... :->
>
>
> ---------------------------------------------------------------------------
>
> Freehosting PIPNI - http://www.pipni.cz/
>
> _______________________________________________
> Python mailing list
> python na py.cz
> http://www.py.cz/mailman/listinfo/python
>
> Visit: http://www.py.cz
--
Jakub Vysoky
mob: +420 605 852 377
jab: jakub.vysoky na gmail.com
twit: https://twitter.com/kvbik
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://www.py.cz/pipermail/python/attachments/20170726/1a363624/attachment-0002.html>
Další informace o konferenci Python