[转帖]【Python】计算程序运行时间的方法总结

python,计算,程序运行,时间,方法,总结 · 浏览次数 : 0

小编点评

**第一种方法:利用time包** ```python import timedef test(): start_time = time.time() # 记录程序开始运行时间 s = 0 for i in range(1000000): s += 1 end_time = time.time() # 记录程序结束运行时间 print('cost %f second' % (end_time - start_time)) return ss=test() print(s) ``` **第二种方法:利用datetime包** ```python import datetimes start_time = datetime.datetime.now() # 记录程序开始运行时间 for i in range(1000000): s += 1 end_time = datetime.datetime.now() # 记录程序结束运行时间 print (end_time - start_time) ``` **第三种方法:利用time中的process_time模块** ```python from time import process_time s = 0 for i in range(1000000): s += 1 print("运行时间是: {:9.9}s".format(process_time())) ``` **第四种方法:导入timedef模块** ```python import timedef func(s): print('func start') for i in range(1000000): s += 1 print('func end') t = time.time() func(0) print(f'时间差:{time.time() - t:.3f}s') ``` **第五种方法:导入timeitdef模块** ```python import timeitdef func(): s = 0 for i in range(1000000): s += 1 print("运行时间是: {:9.9}s".format(timeitdef.timeit(stmt=func, number=1))) ```

正文

一、第一种方法

利用time包:

import time
def test():
    start_time = time.time()  # 记录程序开始运行时间
    s = 0
    for i in range(1000000):
        s += 1
    end_time = time.time()  # 记录程序结束运行时间
    print('cost %f second' % (end_time - start_time))
    return s
s=test()
print(s)

    结果展示为:

    cost 0.058842 second
    1000000
    

      二、第二种方法

      利用datetime包:

      import datetime
      s=0
      starttime = datetime.datetime.now()
      #long running
      for i in range(1000000):
          s += 1
      endtime = datetime.datetime.now()
      print (endtime - starttime)
      

        结果展示为:

        0:00:00.122674
        

          三、第三种方法

          利用time中的process_time模块!

          from time import process_time
          process_time()
          s=0
          for i in range(1000000):
              s += 1
          print("运行时间是: {:9.9}s".format(process_time()))
          

            运行时间为:

            运行时间是:  0.140625s
            

              四、第四种方法

              import time
              def func(s):
                  print('func start')
                  for i in range(1000000):
                      s += 1
                  print('func end')
              

              t = time.time()
              func(0)
              print(f'时间差:{time.time() - t:.3f}s')

                结果展示为:

                func start
                func end
                时间差:0.076s
                

                  五、第五种方法

                  import timeit
                  def func():
                      s=0
                      #print('func start')
                      for i in range(1000000):
                          s += 1
                      #print('func end')
                      #return s
                  

                  print(timeit.timeit(stmt=func, number=1))

                    结果展示为:

                    0.0437587
                    

                      与[转帖]【Python】计算程序运行时间的方法总结相似的内容:

                      [转帖]【Python】计算程序运行时间的方法总结

                      一、第一种方法 利用time包: import time def test(): start_time = time.time() # 记录程序开始运行时间 s = 0 for i in range(1000000): s += 1 end_time = time.time() # 记录程序结束运行

                      [转帖]windows certutil工具

                      https://www.cnblogs.com/superlazybug/p/16448659.html 最近在项目上,有个功能的入口是字符串的SHA1值,所以打桩跑的时候,经常需要自己计算SHA1,开始使用的是python 的hashlib ,能满足日常使用 后来发现,windows 自带的cer

                      [转帖]终于搞懂了服务器为啥产生大量的TIME_WAIT!

                      http://www.yunweipai.com/40430.html 运维派隶属马哥教育旗下专业运维社区,是国内成立最早的IT运维技术社区,欢迎关注公众号:yunweipai领取学习更多免费Linux云计算、Python、Docker、K8s教程关注公众号:马哥linux运维 写在开头,大概 4

                      [转帖]如何提高Linux下块设备IO的整体性能?

                      http://www.yunweipai.com/6989.html 运维派隶属马哥教育旗下专业运维社区,是国内成立最早的IT运维技术社区,欢迎关注公众号:yunweipai领取学习更多免费Linux云计算、Python、Docker、K8s教程关注公众号:马哥linux运维 作者介绍 邹立巍 Li

                      [转帖]Java和Scala的前世今生

                      第一部分:Java 计算机语言介绍 第一代语言:机器语言。指令以二进制代码形式存在 第二代语言:汇编语言。使用助记符表示一条机器指令 第三代语言:高级语言 C、Pascal、Fortran面向过程的语言 C++面向过程/面向对象 Java跨平台的纯面向对象的语言 .NET跨语言的平台 Python、

                      [转帖]Python-Curses模块

                      Python-Curses 什么是Curses?Python Curses模块开始我们的编程吧(启动与结束)重要使用方法(包装用法)Windows and Pads显示文本属性和颜色用户输入 什么是Curses? curses库为基于文本的终端提供独立于终端的屏幕绘制和键盘处理设施;这些终端包括VT

                      [转帖]python 性能优化监控工具_Linux性能优化(四)——BCC性能监控工具

                      一、BCC简介 1、BCC简介 BCC是一个Python库,简化了eBPF应用的开发过程,并收集了大量性能分析相关的eBPF应用。BCC为BPF开发提供了不同的前端支持,包括Python和Lua,实现了map创建、代码编译、解析、注入等操作,使开发人员只需聚焦于用C语言开发要注入的内核代码。 BCC

                      [转帖]python读取配置文件获取所有键值对_python总结——处理配置文件(ConfigParser)

                      python处理ConfigParser 使用ConfigParser模块读写ini文件 (转载) ConfigParserPython 的ConfigParser Module中定义了3个类对INI文件进行操作。分别是RawConfigParser、ConfigParser、 SafeConfig

                      [转帖]python中对配置文件的读写操作

                      https://juejin.cn/post/6844903586963390471 python内置的configparser模块能非常方便的对配置文件进行操作,常见的配置文件有*.ini和*.conf。配置文件常见的内容形式如图所示(还有冒号表示的),主要组成部分也在图中: 需要注意的是valu

                      [转帖]Python连接Oracle数据库进行数据处理操作

                      https://www.dgrt.cn/a/2259443.html?action=onClick 解决以下问题: Python连接Oracle数据库,并查询、提取Oracle数据库中数据? 通过Python在Oracle数据库中创建表 Python数据插入到Oracle数据库中? Python删除