python日期处理库 -- Arrow

  DDU:Day Day Up -- 14

 

在 DDU2时介绍了time和datetime对日期进行处理,有没有觉得很麻烦,特别是时间戳与时间字符串、struct_time 之间的相互转换十分繁琐,记不住啊,反正我每次都是复制的。。

今天给大家讲一个的日期处理的包,使用起来更加简洁

 

安装

 

pip3 install arrow

 

获取当前时间

 

返回都为时间对象,后续可用这个对象进行转换

 

  1. 获取UTC时间:协调世界时

>>> import arrow
>>> utc = arrow.utcnow()
OUT: <Arrow [2019-08-07T14:38:54.800639+00:00]>

 

2. 获取当地时间,返回时间

>>> arrow.now()
OUT: <Arrow [2019-08-07T23:16:36.349825+08:00]>

 

3. 如果想通过utc时间来获取中国时间,可以对utc时间指定时区

>>> utc.to('Asia/Shanghai')
OUT: <Arrow [2019-08-07T23:16:36.349825+08:00]>

 

时间转换

  1.  转换为时间戳 timestamp  

    >>> now = arrow.now()
    >>> now.timestamp
    OUT: 1565191276

    ​​​​​​​

  2. 转为格式化时间

    >>> now.format('YYYY-MM-DD HH:mm:ss')
    OUT: '2019-08-07 23:21:16'

    ​​​​​​​

  3. 格式化字符串转换为时间对象

    >>> now.get('2019-08-07 23:21:16','YYYY-MM-DD HH:mm:ss')
    OUT: <Arrow [2019-08-07T23:21:16+00:00]>

    ​​​​​​​

  4. 时间戳转换为字符串

    >>> arrow.get('1565191276')
    OUT: <Arrow [2019-08-07T15:21:16+00:00]>

    ​​​​​​​

  5. 直接生成对象

    >>> arrow.Arrow(2019,8,7,23,23,23)
    OUT: <Arrow [2019-08-07T23:23:23+00:00]>

     

时间加减

  1. 通过obj.shfit()可以对时间对象进行加减操作

  2. >>> now # 当前时间
    <Arrow [2019-08-07T23:21:16.039384+08:00]>
    
    >>> now.shift(days=-1) # 昨天
    <Arrow [2019-08-06T23:21:16.039384+08:00]>
    
    >>> now.shift(weeks=-1) # 上个星期
    <Arrow [2019-07-31T23:21:16.039384+08:00]>、
    
    >>> now.shift(hours=-1) # 上个钟 
    <Arrow [2019-08-07T22:21:16.039384+08:00]>
    >>> now.shift(years=-1) # 去年
    <Arrow [2018-08-07T23:21:16.039384+08:00]>

     

  3. 两个日期相减

    now = arrow.now() # 2019-08-07T23:52:37.900424+08:00
    
    t1 = arrow.get('2019-08-06 23:21:16','YYYY-MM-DD HH:mm:ss')
    diff = t1 - now
    print(diff.days)  # -1
    print(diff.seconds) # 26918

    ​​​​​​​

end,是不是比 python 自带的时间库好用多了!!

 以上 如果有什么不懂的 欢迎通过公众号骚扰,内有福利!

                                                                

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值