Python怎么检测程序的运行时间和占用内存情况

蜗牛 互联网技术资讯 2022-01-29 301 0

这篇文章主要介绍了Python怎么检测程序的运行时间和占用内存情况的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python怎么检测程序的运行时间和占用内存情况文章都会有所收获,下面我们一起来看看吧。

相关库

Time

time 库是 Python 处理时间的标准库,提供了获取系统时间并格式化输出的功能,提供系统级精确计时功能,用于程序性能分析。

常用方法

时间获取    time()

时间格式化    strftime(format)

程序计时    sleep(seconds)

OS

os 库是 Python 标准库之一,提供了通用的、基本的操作系统交互功能。

常用方法

打开文件   os.open()

返回当前工作目录    os.getcwd()

获取当前进程的进程ID    os.getpid

psutil

psutil 是一个开源且扩平台的库,提供了便利的函数用来获取系统的信息,例如:CPU、内存、网络、磁盘等。还可以用来进行进程管理。

常用方法

常看CPU个数    cpu_count()

获取当前的进程对象    Process()

查看网卡信息统计    net_io_counters()

代码实例:

下面我们将编写两个函数,分别是用来检测程序运行时间和程序内存占用的情况。同时编写一个简单的函数,用来测试。详细代码如下:

import time
import os
import psutil

def count_time(func):
   def int_time():
       start_time = time.time()
       func()
       over_time = time.time()
       total_time = over_time - start_time
       print("程序运行了%s秒" % total_time)
   return int_time

def count_info(func):
   def float_info():
       pid = os.getpid()
       p = psutil.Process(pid)
       info_start = p.memory_full_info().uss/1024
       func()
       info_end=p.memory_full_info().uss/1024
       print("程序占用了内存"+str(info_end-info_start)+"KB")
   return float_info

@count_time
@count_info
def main():
   a = [i for i in range(10000)]
   print(a)

if __name__ == '__main__':
   main()

关于“Python怎么检测程序的运行时间和占用内存情况”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“Python怎么检测程序的运行时间和占用内存情况”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注蜗牛博客行业资讯频道。

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:niceseo99@gmail.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

评论

有免费节点资源,我们会通知你!加入纸飞机订阅群

×
天气预报查看日历分享网页手机扫码留言评论Telegram