Python Pendulum Timezone usage














































Python Pendulum Timezone usage



          Using the timezone library directly


   Like said in the introduction, you can use the timezone library directly with standard datetime objects but with limitations, especially when adding and subtracting time around transition times.


The value of the fold attribute will be used by default to determine the transition rule.


     #CODE
from datetime import datetime
from pendulum import timezone

paris = timezone('Europe/Paris')
dt = datetime(2013, 3, 31, 2, 30)
print(dt)
# By default, fold is set to 0
dt = paris.convert(dt)
print(dt)

print(dt.isoformat())

dt = datetime(2013, 3, 31, 2, 30, fold=1)
print(dt)

dt = paris.convert(dt)
print(dt)

print(dt.isoformat())


     #OUTPUT

2013-03-31 02:30:00
2013-03-31 01:30:00+01:00
2013-03-31T01:30:00+01:00
2013-03-31 02:30:00
2013-03-31 03:30:00+02:00

 

   Instead of relying on the fold attribute, you can use the dst_rule keyword argument. This is especially useful if you want to raise errors on non-existing and ambiguous times.

    
     #CODE
import pendulum

>>> dt = datetime(2013, 3, 31, 2, 30)
# By default, fold is set to 0
>>> dt = paris.convert(dt, dst_rule=pendulum.PRE_TRANSITION)
>>> dt.isoformat()
'2013-03-31T01:30:00+01:00'

>>> dt = paris.convert(dt, dst_rule=pendulum.POST_TRANSITION)
>>> dt.isoformat()
'2013-03-31T03:30:00+02:00'

>>> paris.convert(dt, dst_rule=pendulum.TRANSITION_ERROR)
# NonExistingTime: The datetime 2013-03-31 02:30:00 does not exist


More Articles of Anmol Agrawal:

Name Views Likes
Python Pendulum Why to use Pendulum 81 0
Python Pendulum Limitations in DJANGO 115 0
Python Pendulum Limitations in MYSQLCLIENT 91 0
Python Pendulum Limitations in SQLITE3 95 0
Python Pendulum Testing 2 100 0
Python Pendulum Testing 113 0
Python Pendulum Range 110 0
Python Pendulum Period 3 108 0
Python Pendulum Period 2 103 0
Python Pendulum Period 100 0
Python Pendulum Properties and Duration Methods 2 97 0
Python Pendulum Properties and Duration Methods 106 0
Python Pendulum Instantiation 107 0
Python Pendulum Duration 104 0
Python Pendulum TImezone usage 2 94 0
Python Pendulum Timezone usage 93 0
Python Pendulum Switching Timezones 100 0
Python Pendulum Shifting Time to Transition 112 0
Python Pendulum Normalization 109 0
Python Pendulum Modifiers 2 110 0
Python Pendulum Modifiers 106 0
Python Pendulum Difference for Humans 2 141 0
Python Pendulum Difference for Humans 113 0
Python Pendulum Difference 115 0
Python pendulum Substraction 127 0
Pyhton pendulum Addition 123 0
Python pendulum Comapaison part 2 116 0
Python Pendulum Comparison 118 0
Python Pendulum Localized Formats and Escaping characteristics 117 0
Python pendulum Tokens 123 0
Python pendulum Formatter 116 0
Python pendulum Common Formats 122 0
Python pendulum String Formatting 123 0
Python pendulum Fluent helpers 2 116 0
Python pendulum Fluent helpers 105 0
Python pendulum Attributes and Properties 111 0
Python pendulum Localization 135 118
Python pendulum parsing 2 130 23
Python pendulum Parsing 1 137 61
Python pendulum 2 145 57
Python pendulum basics 136 9
python library Pendulum 136 33
python winsound.SND_PURGE and winsound.SND_WAIT 149 5
Python winsound.SND_NOSTOP 178 1
Python winsound.SND_NODEFAULT 158 1
python winsound.SND_ASYNC not excecuting problem 164 2
Python winsound functions 181 3
python winsound.SND_ALIAS 190 1
Python winsound.MessageBeep() 205 1
Python winsound basic introduction 241 1

Comments