def _TIMESTAMP_LTZ_numpy_to_python(self, ctx):
tzinfo = self._get_session_tz()
scale = ctx['scale']
def conv(value):
zero_fill = ctx['zero_fill']
seconds = int(value[0:-scale - 1]) if scale > 0 else int(value)
# construct datetime object to get utcoffset
dt = ZERO_EPOCH + timedelta(seconds=seconds)
offset = tzinfo.utcoffset(dt)
if offset.days < 0:
ts = (int(value[0:-scale - 1]) + (offset.seconds - 86400)
) * 1000000000
else:
ts = (int(value[0:-scale - 1]) + offset.seconds
) * 1000000000
if scale > 0:
ts += (-1 if value[0] == u'-' else 1) * int(
value[-scale:] + zero_fill)
return numpy.datetime64(ts, 'ns')
return conv
converter.py 文件源码
python
阅读 19
收藏 0
点赞 0
评论 0
评论列表
文章目录