模块讲解

时间模块

"""
主要包含处理年月日时分秒对应时间(着重时分秒)
import time


专门处理年月日
import datetime

"""
import time
import datetime


if __name__ == '__main__':
    """
    1.获取当前时间
    
    时间戳:就是从格林威治时间(1970年1月1日0:0:0)到当前时间的事件差(单位是秒)
    
    (1)存时间以时间戳的形式去存,可以节省内存空间(一个浮点数的内存是4~8字节,存一个字符串一个字符占两个字节)
    (2)自带对时间加密的功能(加密更方便)
    
    
    """
    time1=time.time()
    print(time1,type(time1))   #1533795606.1774344 


    """
    2.将时间戳转换成struct_time
    localtime(seconds)
    参数seconds:(1)不传参,就是将当前时间对应的时间戳转换成struct_time
                (2)传参,就是将指定的时间转换成struct_time
    """
    time1=time.localtime()
    print(time1)  #time.struct_time(tm_year=2018, tm_mon=8, tm_mday=9, tm_hour=14, tm_min=39, tm_sec=31, tm_wday=3, tm_yday=221, tm_isdst=0)

    """
    struct_time的结构:
    tm_year:年
    tm_mon:月
    tm_mday:日
    tm_hour:时
    tm_min:分
    tm_sec:秒
    tm_wday:星期(0-6--->周一到周天)
    tm_yday:当前是当年的第几天
    tm_isdst:是否是夏令时
    
    """
    print(time1.tm_year,time1.tm_mon,time1.tm_mday)  #2018 8 9

    """
    将时间戳转为struct_time
    
    """
    struct1=time.localtime(100022)
    print(struct1)

    """
    将struct_time抓转换成时间戳
    
    2018-8-31  23:30:40
    mktime(时间结构)
    """
    strc=time.strptime('2018-8-31  23:30:40','%Y-%m-%d %H:%M:%S')
    time1=time.mktime(strc)
    #时间加一个小时
    time1+=60*60
    print(time.localtime(time1))  #time.struct_time(tm_year=2018, tm_mon=9, tm_mday=1, tm_hour=0, tm_min=30, tm_sec=40, tm_wday=5, tm_yday=244, tm_isdst=0)


    """
    3.时间的格式转换
    
    (1)将时间已制定的格式转换成字符串
    strftime(时间格式,时间)
    """
    time_str=time.strftime('%Y-%m-%d %H:%M:%S',time.localtime())
    print(time_str)   #2018-08-09 14:57:40


    """
    strptime(需要转换的字符串,时间格式)
    将时间字符串转换为相应的struct_time
    """
    # struct_time=time.strptime('今天是2015年8月9日','今天是%y年%m月%d号')
    struct_time=time.strptime('2018-8-9','%Y-%m-%d')
    print(struct_time)   #time.struct_time(tm_year=2018, tm_mon=8, tm_mday=9, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=221, tm_isdst=-1)


    """
    4.延迟
    
    sleep(秒):可以让线程阻塞指定的时间
    """
    # time.sleep()

datetime模块

import datetime

if __name__ == '__main__':
    """
    1.日期类(date):只能表示年月日
    
    min:最小日期
    max:最大日期
    resolution:最小单位
    """
    print(datetime.date.min, type(datetime.date.min))  # 0001-01-01 
    print(datetime.date.max, type(datetime.date.max))  # 9999-12-31 
    print(datetime.date.resolution)  # 1 day, 0:00:00


    """
    2.类方法
    
    """
    #获取当前日期
    taday=datetime.date.today()
    print(taday)   #2018-08-09

    #将时间戳转换成日期
    taday2=datetime.date.fromtimestamp(0)
    print(taday2)   #1970-01-01


    """
    2.对象属性
    """
    max1=datetime.date.max
    print(max1)  #9999-12-31

    #年月日属性
    print(taday.year,type(taday.year))   #2018 
    print(taday.month)   #8
    print(taday.day)   #9

    """
    3.对象方法
    """
    #获取指定日期对应的星期
    print(taday.isoweekday())   #4

    #将日期转换成
    print(taday.ctime())  #Thu Aug  9 00:00:00 2018

    #将指定的日期转换成指定格式的字符串日期
    print(taday.strftime('%Y-%m-%d'))  #2018-08-09

    #将日期转换成struct_time
    print(taday.timetuple())  #time.struct_time(tm_year=2018, tm_mon=8, tm_mday=9, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=221, tm_isdst=-1)

    #创建日期对象
    print(datetime.date(2017,9,10))  #2017-09-10


    #=========datetime类=========

你可能感兴趣的:(模块讲解)