• python计算程序开始、结束以及运行的时间


    python 计算程序运行的耗时,主要有三种方法:

    time.time() 、 time.perf_counter() 和 datetime.datetime.now()方法

    使用方法如下:

    1. time.time()

    import time
    start = time.time()    # 程序开始时间,单位为秒
    print("start_time:", start)
    
    # function()   运行的程序
    summ = 0
    for i in range(0, 10000):
        summ = summ + i
    print("sum:", summ)
    
    end = time.time()    # 程序结束时间
    print("end_time:", end)
    run_time = end - start   # 程序的运行时间,单位为秒
    print("run_time:", run_time)
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15

    在这里插入图片描述

    2. time.perf_counter()

    与time.time()用法一致。

    import time
    start = time.perf_counter()    # 程序开始时间
    print("start_time:", start)
    # function()   运行的程序
    summ = 0
    for i in range(0, 10000):
        summ = summ + i
    print("sum:", summ)
    
    end = time.perf_counter()   # 程序结束时间
    print("end_time:", end)
    run_time = end - start   # 程序的运行时间,单位为秒
    print("run_time:", run_time)
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    附:time.sleep() 让程序暂停指定的秒数,如 time.sleep(0.5)
    在这里插入图片描述

    二者的区别为:

    time.time() 为wall time(墙上时钟),是系统时钟的时间戳(1970-01-01 00:00:00 UTC 后经过的浮点秒数)。

    time.perf_counter() 为该程序运行后CPU运行的浮点秒数。不包含sleep用时。

    所以在统计程序运行用时时,应按照自身需求进行选用。

    3、datetime.datetime.now()方法

    生成一个datetime.datetime对象,包含了年、月、日、时、分、秒、毫秒七个参数
    t.year, t.month, t.day, t.hour, t.minute, t.second, t.microsecond

    from datetime import datetime
    # start = datetime.now().strftime('%Y-%m-%d %H:%M:%S') #设置格式
    start = datetime.now()
    print("start_time:", start)
    # function()   运行的程序
    summ = 0
    for i in range(0, 10000):
        summ = summ + i
    print("sum:", summ)
    
    end = datetime.now()
    print("end_time:", end)
    run_time = end - start   # 程序的运行时间
    print("run_time:", run_time)
    print("microseconds: ", (end-start).microseconds)  # 毫秒
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15

    在这里插入图片描述

  • 相关阅读:
    【数据结构C/C++】单向链表的增删改查
    P02014006 丁畅(信息论作业)
    【老生谈算法】matlab实现图论程序算法大全——图论程序算法大全
    JSR303和拦截器
    mongodb常用命令(3)
    Java抽象类
    SemanticKernel如何基于自有数据聊天
    计组-机器字长、存储字长、指令字长以及和他们有关的机器位数
    Linux驱动开发(十二)---树莓派framebuffer学习(改造OLED)
    3.3日学习打卡----初学Redis(一)
  • 原文地址:https://blog.csdn.net/QMU111/article/details/130911371