美文网首页
Python 中的 datetime 模块的简单使用

Python 中的 datetime 模块的简单使用

作者: Manchangdx | 来源:发表于2018-02-21 00:58 被阅读0次

    datetime 对象可以打印精确的当前日期和时间:

    In [1]: from datetime import datetime   
    
    In [2]: datetime.utcnow()      # 获得格林威治时间,即伦敦时间,比北京时间慢 8 小时
    Out[2]: datetime.datetime(2018, 2, 20, 16, 53, 30, 587768)
    
    In [3]: datetime.now()         # 获得本地时间,即北京时间
    Out[3]: datetime.datetime(2018, 2, 21, 0, 53, 41, 794014)
    
    In [4]: print(datetime.now())  # 用 print 格式化打印样式
    2018-02-21 01:02:20.425024
    
    In [5]: datetime.now()
    Out[5]: datetime.datetime(2018, 3, 12, 13, 17, 37, 771038)
    
    In [6]: datetime.now().date() # 取日期
    Out[6]: datetime.date(2018, 3, 12)
    
    In [7]: datetime.now().time() # 取时间
    Out[7]: datetime.time(13, 17, 54, 87407)
    
    In [8]: print(datetime.now().date())
    2018-03-12
    
    In [8]: print(datetime.now().time())
    13:18:08.385321
    

    striptime 方法将字符串转换为 datetime 数据类型:

    In [12]: type(datetime.now())  
    Out[12]: datetime.datetime
    
    In [13]: s = '2018-02-21 Kobe 01#:02:20'
    
    # 格式化字符串,使之转换为 datetime 数据类型
    In [14]: d = datetime.strptime(s, '%Y-%m-%d Kobe %H#:%M:%S')
    
    In [15]: d
    Out[15]: datetime.datetime(2018, 2, 21, 1, 2, 20)
    
    In [16]: print(d)
    2018-02-21 01:02:20
    
    In [17]: type(d)
    Out[17]: datetime.datetime
    

    strftime 方法将 datetime 数据类型转换为字符串:

    In [26]: d
    Out[26]: datetime.datetime(2018, 2, 21, 1, 2, 20)
    
    # %a 简化英文星期名称
    # %m 月份(01-12)
    # %d 月中的一天(0-31)
    In [27]: s = d.strftime('%a %m %d %H:%M:%S')
    
    In [28]: s
    Out[28]: 'Wed 02 21 01:02:20'
    

    timedelta 方法加减日期时间:

    In [53]: from datetime import timedelta
    
    In [54]: now = datetime.now()
    
    In [55]: now
    Out[55]: datetime.datetime(2018, 2, 21, 1, 51, 19, 90276)
    
    # 参数包括 days、hours、seconds 等
    # 所有参数均为可选参数,且默认都是 0,参数值可以是整数、浮点数、正数或负数
    In [56]: now + timedelta(days=1)
    Out[56]: datetime.datetime(2018, 2, 22, 1, 51, 19, 90276)
    
    In [57]: now + timedelta(days=3, hours=-1.5)
    Out[57]: datetime.datetime(2018, 2, 24, 0, 21, 19, 90276)
    
    In [58]: now - timedelta(days=-3, hours=1.5)
    Out[58]: datetime.datetime(2018, 2, 24, 0, 21, 19, 90276)
    

    相关文章

      网友评论

          本文标题:Python 中的 datetime 模块的简单使用

          本文链接:https://www.haomeiwen.com/subject/rojntftx.html