美文网首页
13.time、datetime模块

13.time、datetime模块

作者: 哈哈大圣 | 来源:发表于2019-12-21 22:22 被阅读0次

    一、time模块

    1). 在Python中表示时间的方式

    1. 时间戳
    2. 格式化的时间字符串
    3. 结构化时间:Python中使用一元组定义时间的相关属性,与特定平台相关

    2). 时间相关定义

    1. UTC: 格林威治天文时间,世界标准时间。在中国为UTC+8。
    2. DST:夏令时。
    3. 时间戳(timestamp):1970年1月1日00:00:00开始按秒计算的偏移量。 (Python中的时间戳类型为浮点数)
    import time
    
    a = type(time.time())
    print(a) # <class 'float'>
    

    3). time模块的内置方法

    • 需要引入time模块
    import time
    
    1. 获得/转换为结构化元组时间
    import time
    a = time.gmtime()       # UTC 获得结构化元祖时间
    b = time.gmtime(123456) # 指定时间戳转换为元组时间
    
    c = time.localtime() # UTC+8(中国) 结构化时间元组
    d = time.localtime(1234)
    '''
    time.struct_time(tm_year=2019, 
                     tm_mon=12, 
                     tm_mday=21, 
                     tm_hour=13, 
                     tm_min=40, 
                     tm_sec=55, 
                     tm_wday=5, 
                     tm_yday=355, 
                     tm_isdst=0)
    '''
    
    1. 获得时间戳
    a = time.time() # 本地时间戳
    b = time.mktime(time.gmtime())    # UTC 获取时间戳,浮点数
    c = time.mktime(time.localtime()) # UTC + 8(中国) 获取时间戳,浮点数
    
    1. 获得/转换标准结构化时间字符串(欧美风格)
    a = time.ctime()
    b = time.asctime()
    # Sat Dec 21 21:52:15 2019
    
    a = time.ctime(1223334456)         # 转换时间戳为字符串时间
    b = time.asctime(time.localtime()) # 转换时间元组为祖符串时间
    
    1. 线程睡眠指定时间
    time.sleep(0.5) # 单位 秒
    
    1. 将元组时间转换为字符串时间
    a = time.strftime("%Y-%m-%d %X", time.localtime())
    
    1. 将字符串时间转换为元组时间
    c = time.strptime("2017-10-27", "%Y-%m-%d")
    

    二、datetime模块

    1). datetime模块的常用内置方法

    import time, datetime
    
    d = datetime.datetime.now()  # 返回当前的datetime日期类型
    
    a = d.timestamp()  # 时间戳 1576937905.999808
    b = d.today()      # 字符串 2019-12-21 22:18:32.300895
    c = d.year         # 2019
    e = d.timetuple()  # 元组时间
    f = datetime.date.fromtimestamp(time.time())  # 把一个时间戳转为datetime日期类型
    

    2). 时间运算

    a = datetime.datetime.now() + datetime.timedelta(4)        # 当前时间+4天
    b = datetime.datetime.now() + datetime.timedelta(hours=4)  # 当前时间+4小时
    
    """时间替换"""
    d = datetime.datetime.now()  # 返回当前的datetime日期类型
    d.replace(year=2018,month=2,day=2,hour=12,minute=12,second=12)
    

    相关文章

      网友评论

          本文标题:13.time、datetime模块

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