如何在Python中获得当前CPU和RAM的使用量?获得当前系统状态的首选方法是什么(当前CPU、RAM、空闲磁盘空间等)用Python?*nix和Windows平台的加分。似乎有几种可能的方法可以从我的搜索中提取出来:使用库,例如PSI(目前似乎没有在多个平台上积极开发和支持)或类似的东西吡啶抓斗(同样,自2007年以来,似乎没有任何活动,也没有对Windows的支持)。使用特定于平台的代码,例如使用os.popen("ps")或类似于*nix系统和MEMORYSTATUS在……里面ctypes.windll.kernel32(见这个关于ActiveState的食谱)适用于Windows平台。可以将Python类与所有这些代码片段放在一起。这并不是说这些方法不好,但是是否已经有了一种支持良好的、多平台的方法来做同样的事情呢?
3 回答
繁花如伊
TA贡献2012条经验 获得超12个赞
psutil是一个模块,它提供了一个接口,通过使用Python以可移植的方式检索有关运行进程和系统利用率(CPU、内存)的信息,实现了PS、top和Windows任务管理器等工具提供的许多功能。
它目前支持32位和64位架构的Linux、Windows、OSX、Sun Solaris、FreeBSD、OpenBSD和NetBSD,Python版本从2.6到3.5(Python2.4和2.5的用户可能使用2.1.3版本)。
psutil
:
#!/usr/bin/env pythonimport psutil# gives a single float valuepsutil.cpu_percent() # gives an object with many fieldspsutil.virtual_memory()# you can convert that object to a dictionary dict(psutil.virtual_memory()._asdict())
喵喵时光机
TA贡献1846条经验 获得超7个赞
import os tot_m, used_m, free_m = map(int, os.popen('free -t -m').readlines()[-1].split()[1:])
添加回答
举报
0/150
提交
取消