• datetime模块


    datetime模块中包含如下类:

    类名功能说明
    date 日期对象,常用的属性有year, month, day
    time 时间对象
    datetime 日期时间对象,常用的属性有hour, minute, second, microsecond
    datetime_CAPI 日期时间对象C语言接口
    timedelta 时间间隔,即两个时间点之间的长度
    tzinfo 时区信息对象

    datetime模块中包含的常量

    常量功能说明用法返回值
    MAXYEAR 返回能表示的最大年份 datetime.MAXYEAR 9999
    MINYEAR 返回能表示的最小年份 datetime.MINYEAR 1

    一、date类

    date对象由year年份、month月份及day日期三部分构成  

    import datetime
    import time
    
    a = datetime.date.today()  #获取当前日期。2019-03-14
    a=datetime.date(2017, 3, 22)  #创建日期对象。2017-03-22
    b=a.year     #返回年份
    b=a.month #返回月份
    b=a.day   #返回日期
    b=a.__getattribute__('year')   #返回年份
    b=a.__getattribute__('month')  #返回月份
    b=a.__getattribute__('day')     #返回日期
    b=datetime.date(2017,3,15)
    c=a.__eq__(b)  #a是否等于b
    c=a.__ge__(b)   #a是否大于等于b
    c=a.__gt__(b)   #a是否大于b
    c=a.__le__(b)    #a是否小于等于b
    c=a.__lt__(b)   #a是否小于b
    c=a.__ne__(b)   #a是否不等于b
    c=a.__sub__(b)   #a-b,计算ab相差时间。7 days, 0:00:00
    c=a.__rsub__(b)  ##b-a,计算ab相差时间。-7 days, 0:00:00
    c=a.isocalendar()  #把日期转换成元组标准形式。(2017, 12, 3)
    c=a.isoformat()    #转换成YYYY-MM-DD形式。2017-03-22
    c=a.isoweekday()   #返回日期这一天是星期几。
    #1  表示星期一;7表示星期日
    c=a.weekday()  #返回日期这一天是星期几
    #0  表示星期一;6表示星期日
    c=a.timetuple()  #返回一个类型为time.struct_time的数组
    #time.struct_time(tm_year=2017, tm_mon=3, tm_mday=22, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=2, tm_yday=81, tm_isdst=-1)
    c=a.timetuple().tm_year  #返回年份。2017
    
    d=a.toordinal()     #从公元1年1月1日为1 到日期的天数.日期戳
    c=datetime.date.fromordinal(d)   #把日期戳转换成日期格式。2017-03-22
    
    d=time.time()  #当前的时间戳时间戳
    c=datetime.date.fromtimestamp(d)  #把时间戳转换成日期。2019-03-14
    
    c=datetime.date.max  #能够表示的最大日期。9999-12-31
    c=datetime.date.min   #能够表示的最小日期。0001-01-01
    
    c=a.__format__('%y/%m/%d')  #把日期转换成指定格式。17/03/22
    c=a.strftime("%Y%m%d")    #把日期转换成指定格式。20170322
    c=a.__str__()  #把日期转换成字符串

    二.time类 

    time类由hour小时、minute分钟、second秒、microsecond毫秒和tzinfo五部分组成

    import datetime
    
    a = datetime.time(12,20,59,899)  #定义时间对象。12:20:59.000899
    c=a.hour  #返回小时
    c=a.minute  # 返回分钟
    c=a.second   #返回 秒
    c=a.microsecond  #返回毫秒
    c=a.tzinfo #????????
    c=a.__getattribute__('hour')   #返回小时
    c=a.__getattribute__('minute')  # 返回分钟
    c=a.__getattribute__('second')   #返回 秒
    b = datetime.time(11,20,59,889)
    c=a.__eq__(b)   #a是否等于b
    c=a.__ge__(b)   #a是否大于等于b
    c=a.__gt__(b)   #a是否大于b
    c=a.__le__(b)    #a是否小于等于b
    c=a.__lt__(b)   #a是否小于b
    c=a.__ne__(b)   #a是否不等于b
    c=datetime.time.max  #最大的时间表示数值.23:59:59.999999
    c=datetime.time.min  #最小的时间表示数值.00:00:00
    c=datetime.time.resolution   #datetime最小单位.0:00:00.000001
    c=a.__format__('%H:%M:%S')  #转化为指定格式。12:20:59
    c=a.strftime('%H:%M:%S')   #转化为指定格式。12:20:59
    c=a.isoformat()  #转化为ISO标准格式。12:20:59.000899
    c=a.__str__()  #转化为字符串。12:20:59.000899

    datetime类

     datetime类其实是可以看做是date类和time类的合体,其大部分的方法和属性都继承于这二个类

    import datetime
    
    a=datetime.datetime.now()  #获取系统当前日期和时间.2019-03-15 12:28:50.530801
    a=datetime.datetime(2017, 3, 22, 16, 9, 33, 494248)  #定义一个日期时间对象.2017-03-22 16:09:33.494248
    c1=a.date()  #提取 日期。2017-03-22
    c2=a.time()  #提取时间。16:09:33.494248
    c3=a.utctimetuple()  #转化为UTC时间元组
    #time.struct_time(tm_year=2017, tm_mon=3, tm_mday=22, tm_hour=16, tm_min=9, tm_sec=33, tm_wday=2, tm_yday=81, tm_isdst=0)
    c=datetime.datetime.combine(c1,c2)  #将一个date对象和一个time对象合并生成一个datetime对象.2017-03-22 16:09:33.494248
    c=c3.tm_year  #提取年份
    a1=datetime.datetime(2017, 4, 23, 1, 19, 3, 494)
    c4=a1-a  #计算时间差.31 days, 9:09:29.506246
    c=c4.total_seconds()     #返回时间差的总秒数。2711369.506246
    c=c4.seconds  #返回时间差秒数32969(包括小时分钟秒)
    c=c4.days  #返回时间差天数
    c=c4.microseconds  #返回时间差微妙数
    c=a1+datetime.timedelta(hours = 8)  #加8小时
    c=a1+datetime.timedelta(days = 8)  #加8天
    c=a1+datetime.timedelta(minutes = 8)  #加8分钟
    c=a1+datetime.timedelta(seconds = 8)  #加8秒
    c=a1+datetime.timedelta(microseconds = 8)  #加8微妙

    附录:python中时间日期格式化符号:

    符号说明
    %y 两位数的年份表示(00-99)
    %Y 四位数的年份表示(000-9999)
    %m 月份(01-12)
    %d 月内中的一天(0-31)
    %H 24小时制小时数(0-23)
    %I 12小时制小时数(01-12)
    %M 分钟数(00=59)
    %S 秒(00-59)
    %a 本地简化星期名称
    %A 本地完整星期名称
    %b 本地简化的月份名称
    %B 本地完整的月份名称
    %c 本地相应的日期表示和时间表示
    %j 年内的一天(001-366)
    %p 本地A.M.或P.M.的等价符
    %U 一年中的星期数(00-53)星期天为星期的开始
    %w 星期(0-6),星期天为星期的开始
    %W 一年中的星期数(00-53)星期一为星期的开始
    %x 本地相应的日期表示
    %X 本地相应的时间表示
    %Z 当前时区的名称
    %% %号本身

     看资料 https://www.cnblogs.com/awakenedy/articles/9182036.html 

  • 相关阅读:
    Knowledge point
    Nagios详解(基础、安装、配置文件解析及监控实例)
    配置网络yum源
    springsecurity整合springboot实现简单认证授权
    使用openssl生成rsa密钥对
    springsecurity实现记住我功能
    springsecurity生成图形验证码并校验
    springsecurity开发基于表单的认证--个性化用户认证流程
    springSecurity自定义用户认证逻辑
    关于JWT分析的文章转载
  • 原文地址:https://www.cnblogs.com/liming19680104/p/10531783.html
Copyright © 2020-2023  润新知