首页   注册   登录
 mzmxcvbn 最近的时间轴更新

mzmxcvbn

  •   V2EX 第 226748 号会员,加入于 2017-04-19 13:41:10 +08:00,今日活跃度排名 7582
    mzmxcvbn 最近回复了
    @bolide2005 真是万分感谢,帮忙解决了这个疑惑,不然以后很容易采坑。

    @wwqgtxx 总结在 47 楼了,应该是没错了。

    另外谢谢所有参与讨论和提供第三方库解决方法的朋友们
    @bolide2005
    嗯啊,也就是说,datetime.now().timstamp()和 time.time()出来的就是标准 unix 时间戳。

    对于外部传来的标准 unix 时间戳,用 fromtimestamp()拿到的就是本地时间的 datetime ;用 utcfromtimestamp()拿到的就是 utc 时间的 datetime。这样总结没问题吧。
    @bolide2005
    @wwqgtxx
    找了几个在线的时间戳网站,好像还真是这样:
    datetime.now().timstamp()和 time.time()出来的就是标准 unix 时间戳。
    那么问题来了,datetime.utcnow().timstamp()出来的这个是什么鬼。
    @rrfeng 最后的结论是啥,就是用第三方模块吗。。
    @bolide2005
    不不不,datetime.utcnow().timestamp()只要用 fromtimestamp()就能换回正确的 utc 时间了。
    datetime.now().timestamp()才要用 utcfromtimestamp()才能得到 utc 时间

    d1 = datetime.now()
    d2 = datetime.utcnow()

    t1 = d1.timestamp()
    t2 = d2.timestamp()
    t3 = time.time()

    nd1 = datetime.utcfromtimestamp(t1)
    nd2 = datetime.fromtimestamp(t2)
    nd3 = datetime.utcfromtimestamp(t3)

    这里 nd1,nd2,nd3 拿到的都是相同的 utc 时间


    另外,你的意思是 time.time()才是 unix 标准时间戳?,那 datetime.utcnow().timestamp()是啥
    @wwqgtxx 好的,谢谢,辛苦了。我还以为是我电脑有问题呢,看来取标准时间戳只能用 datetime.utcnow().timestamp()了
    @bolide2005 time.struct_time(tm_year=1970, tm_mon=1, tm_mday=1, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=1, tm_isdst=0) 查出来是这个,应该对的吧
    @wwqgtxx 啊。。。为什么我 time.time()出来的时间戳是和 datetime.now().timestamp()一样的,
    @NoAnyLove 万分感谢!我整理一下你看对吗:如果确定传过来的是标准 unix 时间戳,我用 datetime.fromtimestamp()就能拿到一个 datetime 形式的 utc 时间。但如果对面不是标准的时间戳,我就要用 datetime.utcfromtimestamp()才能拿到一个 datetime 形式的 utc 时间。
    @wwqgtxx 万分感谢!我也是今天才知道 datetime.now().timestamp()取出来的不是标准时间戳。
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   鸣谢   ·   779 人在线   最高记录 3541   ·  
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.0 · 14ms · UTC 19:03 · PVG 03:03 · LAX 12:03 · JFK 15:03
    ♥ Do have faith in what you're doing.
    沪ICP备16043287号-1