欢迎访问宙启技术站
智能推送

使用Pythonpsutil库统计系统运行中的进程数量

发布时间:2023-12-11 16:12:53

psutil是一个跨平台的库,用于获取有关系统进程和系统利用率(CPU,内存,磁盘,网络等)的信息。它可以帮助我们轻松地获取当前系统中运行的进程数量,并且还可以获取进程的详细信息。

以下是一个使用psutil库统计系统运行中的进程数量的例子:

import psutil

def get_running_processes():
    # 获取当前系统中运行的所有进程列表
    process_list = psutil.process_iter()
    # 统计进程数量
    process_count = 0
    for process in process_list:
        process_count += 1
    return process_count

if __name__ == "__main__":
    running_processes = get_running_processes()
    print("当前系统中运行的进程数量为: ", running_processes)

在这个例子中,我们使用psutil的process_iter()方法获取了当前系统中运行的所有进程的列表。然后,我们使用一个计数器来统计进程的数量。最后,我们将得到的进程数量打印出来。

需要注意的是,由于process_iter()方法返回的是一个迭代器,所以我们可以直接使用len()函数获取进程数量,将上述代码中的for循环改为以下代码即可:

process_count = len(psutil.process_iter())

psutil库还提供了许多其他有用的功能,可以帮助我们获取进程的详细信息,例如进程的ID、名称、命令行参数、运行时间等。以下是一个获取所有进程的详细信息的例子:

import psutil

def get_process_details():
    # 获取当前系统中运行的所有进程列表
    process_list = psutil.process_iter()
    # 获取进程的详细信息
    process_details = []
    for process in process_list:
        process_details.append(process.as_dict(attrs=['pid', 'name', 'cmdline', 'create_time']))
    return process_details

if __name__ == "__main__":
    process_details = get_process_details()
    print("当前系统中运行的进程详细信息:")
    for process in process_details:
        print(process)

在这个例子中,我们使用psutil的as_dict()方法获取了每个进程的详细信息,并将其添加到一个列表中。最后,我们打印出这个列表,即可得到所有进程的详细信息。

以上就是使用psutil库统计系统运行中的进程数量的示例代码,以及获取进程详细信息的示例代码。希望对你有帮助!