美文网首页
10.26 时间模块

10.26 时间模块

作者: 烟雨江畔丶 | 来源:发表于2018-10-30 20:18 被阅读0次

    时间模块

    import time          #导入模块time
    import datetime   #导入模块datetime
    
    

    ================time=================
    时间格式:时间戳, struct_time

    1.获取当前时间(时间戳)

    时间戳:一个时间到1970年1月1日0点0分0秒的时间差。单位是秒

    a. 方便对时间进行加密(保存时间前进行额外的运算)
    b. 节省内存(数据库) 1540518823.7941608(8字节)

    time1 = time.time()
    
    print(time1, type(time1))
    
    
    2.localtime

    localtime(): 获取当前时间(struct_time)
    localtime(时间戳): 将指定的时间戳转换成struct_time

    struct_time:
    tm_year -> 年
    tm_mon -> 月
    tm_mday -> 日
    tm_hour -> 时
    tm_min -> 分
    tm_sec -> 秒
    tm_wday -> 星期(值的范围是06,分别对应周一周天)
    tm_yday -> 当前时间是今年的第几天
    tm_isdst -> 是否是夏令时

    time2 = time.localtime()
    print(time2, time2.tm_year, time2.tm_mon)
    
    time3 = time.localtime(100)
    print('%d-%d-%d' % (time3.tm_hour, time3.tm_min, time3.tm_sec))
    
    
    3.strftime: 将时间(struct_time)以指定的格式转换成字符串

    strftime(格式, 时间) --> 返回时间字符串

    格式:是时间字符串(含有时间格式符的字符串)
    %Y --> 年
    %m --> 月(数字)
    %d --> 日
    %H --> 时
    %M --> 分
    %S --> 秒

    %a -- 星期(英文缩写)
    %A --> 星期(英文)
    %h --> 月(英文缩写)

    str_time1 = time.strftime('%Y年%m月%d日 %H:%M:%S %a', time2)
    print(str_time1)
    
    
    4.strptime: 将字符串转换成时间

    strptime(字符串, 格式)

    time4 = time.strptime('2018-06-13 01:34:02', '%Y-%m-%d %H:%M:%S')
    print(time4)
    
    

    ====================datetime.datetime======

    from datetime import datetime, time, date
    #从datetime模块中导入datetime,time,date类
    
    

    date: 可以表示年月日
    time类:可以表示时分秒
    datetime类:可以表示年月日时分秒

    date类

    对象属性:day,month,year

    date1 = date(2018, 10, 26)
    print(date1.year, date1.month, date1.day)
    
    

    类方法:

    fromtimestamp(时间戳) --> 将时间戳转换成日期(date对象)
    tody() --> 获取当前日期
    """
    date2 = date.fromtimestamp(100)
    print(date2, type(date2))
    
    date3 = date.today()
    print(date3, type(date3))
    
    # date4 = date.fromordinal(366)
    # print(date4, type(date4))
    
    

    对象方法:
    ctime() --> 将日期对象以 '%a %h %d %H:%M:%S %Y' 格式转换成字符串
    strftime(时间格式字符串) --> 将日期对象以指定的格式转换成字符串
    timetuple() --> 将日期转换成struct_time
    weekday()/isoweekday() --> 获取星期值

    t = date3.ctime()
    print(t, type(t))
    
    t = date3.strftime('%Y/%m/%d')
    print(t)
    
    t = date3.timetuple()
    print(t)
    
    t = date3.weekday()
    print(t)
    
    t = date3.isoweekday()
    print(t)
    datetime4 = datetime.now()
    # 将时间转换成时间戳
    print(datetime4.timestamp())
    
    

    ============时间的加减操作============

    date对象和datetime的对象都支持加减操作
    date对象 + timedelta对象

    from datetime import timedelta
    
    date1 = date(2018, 1, 1)
    print(date1)
    new_date = date1 - timedelta(days=1)
    new_date = date1 + timedelta(days=10)
    print(new_date)
    
    date2 = datetime(2018, 12, 31, hour=23, minute=59)
    print(date2)
    new_date = date2 + timedelta(minutes=1)
    print(new_date)
    
    

    相关文章

      网友评论

          本文标题:10.26 时间模块

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