最新公告
  • 欢迎您光临起源地模板网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入钻石VIP
  • python3时间datetime如何转换成数字?

    正文概述    2020-03-03   297

    python3时间datetime如何转换成数字?

    在计算的过程中,更加简便的运算往往是最受欢迎的。对于python3中的datetime来说,转换是为了让运算更加方便,同时电脑的内存也不会占用太多,说到这里很多小伙伴都会心动了,想要赶紧尝试下这种新的转换。下面小编就datetime的一些好处和使用方法跟大家进行讲解。


    如果你使用dir来查看datetime的方法,应该能观察到其包含有一个timestamp, timestamp是一个浮点型的小数,表示当前时间到utc时间1970.01.01凌晨相距的秒数。

    timestamp不同,python的time包中还有一个time对象,当我们调用time.time()会返回一个float形态的数值,其精度比timestamp更高(多一位)。如果是需要更高的精度,可以使用time.time_ns()获取纳秒级别的数值, 不过此时返回的是整数形态,精度比timestamp高三位!

    # timestamp的底层实现
    (dt - datetime(1970, 1, 1, tzinfo=timezone.utc)).total_seconds()


    将时间转换成数字有几个优势,但是具体还要按需求来定,

    • 更小的存储

    • 方便的比较与计算(当然本身datetime对象也是支持的,但是某些需要引入timedelta对象)

    • 格式相对统一(因为简单)

    如果要使用timestamp完成时间的比较与加减,直接计算就好了。但是如果要使用timestamp就会稍微麻烦一些,datetime目前支持如下几种

    datetime2 = datetime1 + timedelta
    datetime2 = datetime1 - timedelta
    timedelta = datetime1 - datetime2                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
    datetime1 < datetime2 Compares datetime to datetime.

    要注意的是

    datetime和timedelta做加减后的对象依旧是datetime
    datetime对象之间可以直接比较
    datetime和datetime相减,得到一个timedelta对象,同时小减大,将得到负数
    datetime不可以和datetime相加

    比如要计算当前时间的8小时后,就是

    n = datetime.datetime.now()
    m = n + datetime.timedelta(hours=8)
    print(m, type(m))
    print(m<n, n<m)


    输出

    2019-04-09 02:36:37.956798 <class 'datetime.datetime'>
    False True


    以上就是datetime转换成数字的方法啦,特别是结尾要注意的事项,小伙伴们可不要忘记了哦。更多Python学习推荐:起源地模板网教学中心


    起源地下载网 » python3时间datetime如何转换成数字?

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板不会安装或需要功能定制以及二次开发?
    请QQ联系我们

    发表评论

    还没有评论,快来抢沙发吧!

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者

    请选择支付方式

    ×
    迅虎支付宝
    迅虎微信
    支付宝当面付
    余额支付
    ×
    微信扫码支付 0 元