使用cpu查找前5个进程的Python代码

使用cpu查找前5个进程的Python代码,python,python-2.7,shell,Python,Python 2.7,Shell,我是python新手,我有一个简单的问题,就是使用CPU查找顶级进程。我可以用ps和sort在shell中完成 我已经检查了一些链接,但部分没有帮助,因为函数定义如下 define find_proc(ps_input) ps_输入如下所示 PID CPU PROG 12658 20 ABC 19265 80 BCD 21265 60 BAD 19655

我是python新手,我有一个简单的问题,就是使用CPU查找顶级进程。我可以用ps和sort在shell中完成

我已经检查了一些链接,但部分没有帮助,因为函数定义如下

define find_proc(ps_input)
ps_输入如下所示

PID        CPU          PROG
12658       20             ABC
19265       80             BCD
21265       60             BAD
19655       11             BCE
有人能帮我做这个项目吗

提前谢谢。

是我推荐的。从PyPI站点,这里是包的描述

psutil(进程和系统实用程序)是一个跨平台的 检索有关运行进程和系统利用率的信息 Python中的(CPU、内存、磁盘、网络、传感器)。这是有用的 主要用于系统监控、分析和限制流程资源 以及运行过程的管理。它实现了许多功能 UNIX命令行工具提供的功能,如:ps、top、, lsof,netstat,ifconfig,who,df,kill,free,nice,ionice,iostat, iotop、正常运行时间、pidof、tty、任务集、pmap

为了解决您的问题陈述,以下是我从网站上获取的示例,其中列出了按内存排序的进程-


完整的代码可在上述网站获得;您可能需要根据cpu使用情况相应调整列表。希望这有帮助。

更新:以下是psutil的一些示例用法:

#!/usr/bin/env python
import psutil
# gives a single float value
psutil.cpu_percent()
# gives an object with many fields
psutil.virtual_memory()
# you can convert that object to a dictionary 
dict(psutil.virtual_memory()._asdict())

请修正答案代码中的缩进。缩进在Python中不是“可选的”。
#!/usr/bin/env python
import psutil
# gives a single float value
psutil.cpu_percent()
# gives an object with many fields
psutil.virtual_memory()
# you can convert that object to a dictionary 
dict(psutil.virtual_memory()._asdict())