zoukankan      html  css  js  c++  java
  • pytz 格式化北京时间 6分钟问题

    使用datetime直接构造时间的时候,设置时区是没有北京时间的,一般来说习惯了linux的同志都会默认用上海时间来代替,这里却有一个问题,如果要进行时区转换,上海时间比北京时间差6分钟。。。
    
    比如:
    
    tz = pytz.timezone('Asia/Shanghai')
    t = datetime.datetime(2015, 9, 5, 9, 0, 0, 0, tzinfo=tz)
    这样打印出来得到的时间是:
    2015-09-07 09:00:00+08:06
    
    在django框架中,貌似from django.utils.timezone import localtime的这个localtime会修正那6分钟,这问题就来了,要自己在程序里构造时间,并且跟用这个localtime转化的时间对比的时候巨麻烦。
    
    解决方法:
    
    tz = pytz.timezone('Asia/Shanghai')
    t = datetime.datetime(start_time.year, start_time.month, start_time.day, 9, 0, 0, 0)
    t = tz.localize(t)
    
    这样打印出来的就没有那个讨厌的:06了。
    2015-09-07 09:00:00+08:00
  • 相关阅读:
    hdu 1258 DFS
    hdu2488 dfs
    poj1915 BFS
    hdu1372 BFS求最短路径长度
    poj3264 线段树
    hdu 2438Turn the corner 三分
    hdu3714 三分
    【转载】单点登陆
    ajax从入门到深入精通
    Web前端技术体系大全搜索
  • 原文地址:https://www.cnblogs.com/cmsd/p/8492514.html
Copyright © 2011-2022 走看看