• Python基础(14)-时间处理


    1.datatime模块介绍

    datetime是python的内置模块,用来处理日期和时间。datetime对象是 date 与 time 的结合体,涵盖了datetime对象

    的所有信息。

    该模块常用的类有:

    类名功能说明
    date 日期对象
    time 时间对象
    datetime 日期时间对象
    timedelta 时间间隔
    tzinfo 时区信息对象

     

    2.构造datatime对象

    from datetime import datetime
    
    datetime(year,month,day,hour=0, minute=0, second=0, microsecond=0, tzinfo=None)
    
    
    参数范围:
      MINYEAR <= year <= MAXYEAR
      1 <= month <= 12
      1 <= day <= 指定年月的天数
      0 <= hour < 24
      0 <= minute < 60
      0 <= second < 60
      0 <= microsecond < 1000000
    

    3.datatime类方法

    datetime.today()

    返回本地区当前日期时间datetime对象

    datetime.today()
    # 输出 : datetime.datetime(2019, 12, 9, 13, 27, 54, 693978)

    datetime.now(tz=None)

    返回本地区当前日期时间datetime对象,可以添加时区tz 默认无时区时,返回结果和datetime.today()一致

    datetime.now()
    # 输出 : datetime.datetime(2019, 12, 9, 13, 27, 54, 693978)
    

    datetime.fromtimestamp(timestamp, tz=None)

    返回给定时间戳的datetime对象,时区默认为空,返回当地日期时间,也可以指定时区

    datetime.fromtimestamp(1575877756)
    # 输出 : datetime.datetime(2019, 12, 9, 15, 49, 16)

    附注:想获取当前时间戳,可通过time模块的time方法实现

    datetime.combine(date, time, tzinfo=self.tzinfo)

    拼接datetime对象,形成一个新的datetime对象 可以输入时区参数,否则默认为原time的时区

    date_ = datetime.today().date()
    time_ = datetime.today().time()
    datetime.combine(date_,time_)
    # 输出 : datetime.datetime(2019, 12, 9, 16, 12, 56, 914484)
    

    datetime.strptime(date_string, format)

    将格式化日期时间字符串,转换为datetime对象,可以转换日期、时间、日期时间

    datetime.strptime('2019-11-05','%Y-%m-%d')
    # 输出 : datetime.datetime(2019, 11, 5, 0, 0)
    datetime.strptime('09:30:50','%H:%M:%S')
    # 输出 : datetime.datetime(1900, 1, 1, 9, 30, 50)
    datetime.strptime('2019-11-05 09:30:50','%Y-%m-%d %H:%M:%S')
    # 输出 : datetime.datetime(2019, 11, 5, 9, 30, 50)
    

    4.datatime实例方法

    d = datetime(2019,12,6,13,30,50)
    d.date() # 输出 : datetime.date(2019, 12, 6) d.time() # 输出 : datetime.time(13, 30, 50) d.timestamp() # 输出 : 1575610250.0 d.weekday() # 输出 : 4 返回星期几,星期一为 0,星期天为 6 d.isoweekday() # 输出 : 5 返回星期几,星期一为 1,星期天为 7 d.isocalendar() # 输出 : (2019, 49, 5) 返回数组:(年、第多少周、星期几)

    datetime.strftime(date_string, format)

    datetime对象转换为格式化字符串

    d = datetime.today()
    datetime.strftime(d,'%Y-%m-%d %H:%M:%S')
    # 输出 : '2019-12-09 16:32:18' 

    5.datatime类实例属性

    d = datetime(2019,12,6,13,30,50)
    
    d.year
    # 输出 : 2019
    
    d.month
    # 输出 : 12
    
    d.day
    # 输出 : 6
    
    d.hour
    # 输出 : 13
    
    d.minute
    # 输出 : 30
    
    d.second
    # 输出 : 50
    
    d.microsecond
    # 输出 : 3000
    

     6.datatime时差计算

    1)计算时间差:

    #! /usr/bin/env python
    #coding=utf-8
    
    import time
    import datetime
    
    d1 = datetime.datetime(2011, 2, 8)
    d2 = datetime.datetime(2010, 12, 31)
    
    print(d1 - d2).days

    2)计算运行时间:

    #! /usr/bin/env python   
    #coding=utf-8   
      
    import time   
    import datetime   
      
    starttime = datetime.datetime.now()   
      
    time.sleep(5)   
      
    endtime = datetime.datetime.now()   
    print(endtime - starttime).seconds 

    3)计算十天后日期时间:

    #! /usr/bin/env python
    #coding=utf-8
    
    import time
    import datetime
    
    d1 = datetime.datetime.now()
    d3 = d1 + datetime.timedelta(days =10)
    
    print(str(d3))
    print(d3.ctime())

    7.time模块

    1)显示当前日期:

    #! /usr/bin/env python
    #coding=utf-8
    
    import time
    
    print(time.strftime("%Y-%m-%d %A %X %Z", time.localtime()))
    

      

  • 相关阅读:
    Android平台架构及特性
    MySQL 数据库性能优化之索引优化
    排序自己总结
    存储过程中“ 警告: 聚合或其他 SET 操作消除了 Null 值” 导致错误的解决
    存储过程的output及return的区别
    如果ssh端口转发时候g没有效果解决方案
    sql语句显示复选内容, indication 为复选框的累计value(整数),显示所有的
    kprfakesu.c Linux su密码欺骗 源码
    Unix/Linux上的后门技术和防范
    iis7应用程序池经常自动停止如何解决?
  • 原文地址:https://www.cnblogs.com/Iceredtea/p/11087551.html
Copyright © 2020-2023  润新知