时间模块

2018-08-09  本文已影响0人  pubalabala
"""__author__ == Jefferson"""
# 主要包含处理年月日时分秒
import time

#专门处理年月日
import datetime

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

    #2. 将时间戳转换成struct time
    '''
    localtime(seconds)
    参数seconds: a. 不传参, 就是将当前时间对应的时间戳转换成struct time
                b. 传参, 就是将指定得时间转换成struct time
    struct_time的结构:
    tm_year: 年
    tm_mon: 月
    tm_mday: 日
    tm_hour: 时
    tm_min: 分
    tm_sec: 秒
    tm_wday: 星期(0-6:周一-周天)
    tm_yday: 当前是当年的第几天
    tm_isdst: 是否是夏令时
    '''
    time1 = time.localtime()
    print(time1)
    print(time1.tm_year,time1.tm_mon,time1.tm_mday)

    #将时间戳转换成struct_time
    struct1 = time.localtime(0)
    print(struct1)

    #将struct_time转换成时间戳
    ''''''
    struct_time = time.strptime('2018-8-31 23:30:40','%Y-%m-%d %H:%M:%S')
    time1 = time.mktime(struct_time)
    time1 += 60 *60
    print('==',time.localtime(time1))

    #3. 时间的格式转换
    '''
    strftime(时间格式,时间)
    将时间以指定的格式转换成字符串
    * %y 两位数的年份表示(00-99)
    * %Y 四位数的年份表示(000-9999)
    * %m 月份(01-12)
    * %d 月内中的一天(0-31)
    * %H 24小时制小时数(0-23)
    * %h 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 当前时区的名称
    * %% %号本身
    '''
    str_time = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime())
    print(str_time)

    '''
    strptime(需要转换的字符串, 时间格式)
    将时间字符串串转换成相应的struct_time
    '''
    struct_time = time.strptime('今天是2018年8月9号', '今天是%Y年%m月%d号')
    print(struct_time)

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

datatime模块

"""__author__ == Jefferson"""
import datetime
if __name__ == '__main__':
    #1. 日期类(date) 只能表示年月日
    #最小日期
    print(datetime.date.min, type(datetime.date.min))

    #最大日期
    print(datetime.date.max)
    print(datetime.date.resolution)

    #2. 类方法
    #获取当前日期
    today = datetime.date.today()
    print(today)

    #将时间戳转换成日期
    today2 = datetime.date.fromtimestamp(0)
    print(today2)

    #对象属性
    #年(year), 月(month), 日(day)
    print(today.year, type(today.year))
    print(today.month)
    print(today.day)

    #对象方法
    #获取星期(0-6:周一-周天)
    print(today.weekday())
    print(today.isoweekday())
    #获取日历信息
    print(today.isocalendar())

    #将日期转换成 'Thu Aug 9 00:00:00 2018'格式
    print(today.ctime())

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

    #将日期转换成struct_timel
    print(today.timetuple())

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


    #=======datetime=======
    datetime.datetime
    print(datetime.datetime.__dict__)
    #dateTime = datetime.datetime()
上一篇 下一篇

猜你喜欢

热点阅读