• 14. 模块-time模块


    一、模块使用

    1. 导入模块
        import time
    
    2. 获取时间戳 - 时间戳,根据1970年1月1日00:00:00开始按秒计算的偏移量
        time.time()
        ->1583204399.9016986
    
    3. 时间戳->时间元组转换
        localtime = time.localtime(time.time())
        ->time.struct_time(tm_year=2016, tm_mon=4, tm_mday=7, tm_hour=10, tm_min=3, tm_sec=27,  tm_wday=3, tm_yday=98, tm_isdst=0)
    
    4. 获取格式化时间
        (1)格式化成2016-03-20 11:45:39形式
            time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
    
        (2)格式化成Sat Mar 28 22:24:24 2016形式
            time.strftime("%a %b %d %H:%M:%S %Y", time.localtime())
    
        (3)将格式字符串转换为时间戳
            a = "Sat Mar 28 22:24:24 2016"
            time.mktime(time.strptime(a,"%a %b %d %H:%M:%S %Y"))
    
    5. 获取UTC世界标准时间
        time.gmtime()
    
    6. 睡眠时间
        time.sleep(1)
    

    二、时间转换图

    三、实例

    import time
    
    1.将字符串的时间"2017-10-10 23:40:00"转换为时间戳和时间元组
    new_time = "2017-10-10 23:40:00"
    format_time = time.strptime(new_time, "%Y-%m-%d %H:%M:%S")
    stamp_time = time.mktime(format_time)
    print(f"时间戳:{stamp_time},时间元组:{format_time}")
    
    2.字符串格式更改。如提time="2017-10-10 23:40:00",想改为 time="2017/10/10 23:40:00"
    one_time = "2017-10-10 23:40:00"
    format_time_two = time.strptime(one_time, "%Y-%m-%d %H:%M:%S")
    new_format_time = time.strftime("%Y/%m/%d %H:%M:%S", format_time_two)
    print(new_format_time)
    
    3.获取当前时间戳转换为指定格式日期
    two_time = time.time()
    struct_time_three = time.localtime(two_time)
    format_time_three = time.strftime("%Y-%m-%d %H:%M:%S", struct_time_three)
    print(format_time_three)
    
    4.获得三天前的时间
    threeAgo = time.time() - 60 * 60 * 24 * 3
    threeAgo = time.localtime(threeAgo)  # 把时间戳转换为元组
    print(time.strftime('%Y-%m-%d %H:%M:%S', threeAgo))
    

    四、datetime模块

    1. 模块导入
        import datetime
    
    2. 获取当前时间
        datetime.datetime.now()
    
    3. 当前时间+3天
        datetime.datetime.now() + datetime.timedelta(3)
    
    4. 当前时间+3小时
        datetime.datetime.now() + datetime.timedelta(hours=3)
    
    5. 时间戳->格式化时间
        datetime.date.fromtimestamp(time.time())
    

    五、时间日期格式化符号

    %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 当前时区的名称
    %% %号本身
    
  • 相关阅读:
    Thrift安装编译指南
    Linux磁盘与文件系统管理
    你懂得C,所以C++也不在话下
    加速NFV(网络功能虚拟化)数据面:SR-IOV和DPDK[原文意译]
    十张图看懂SDN与NFV的区别与联系?
    Lambda表达式用法
    论文写作+gnuplot制图
    私钥、公钥、数字签名和数字证书
    synchronized和Lock的异同
    介绍HTTP协议的传输过程
  • 原文地址:https://www.cnblogs.com/hq82/p/12456793.html
Copyright © 2020-2023  润新知