Python获取CPU占用率与内存使用率

1. 整体流程

首先,我们需要安装psutil库,它是一个跨平台的库,可以用来获取系统信息。然后,我们需要使用psutil库的函数来获取CPU占用率和内存使用率。最后,我们将获取到的数据进行处理和展示。

整个流程如下所示:

flowchart TD
    A[安装psutil库] --> B[导入psutil库]
    B --> C[获取CPU占用率]
    C --> D[获取内存使用率]
    D --> E[处理并展示数据]

2. 安装和导入psutil库

首先,我们需要在Python环境中安装psutil库。可以使用以下命令来安装:

!pip install psutil

安装完成后,我们需要导入psutil库,以便在代码中使用其提供的功能。可以使用以下代码来导入:

import psutil

3. 获取CPU占用率

使用psutil库的cpu_percent()函数可以获取当前系统的CPU占用率。该函数返回一个浮点数,表示CPU的占用率。

以下是获取CPU占用率的代码:

cpu_usage = psutil.cpu_percent()

4. 获取内存使用率

使用psutil库的virtual_memory()函数可以获取当前系统的内存使用率。该函数返回一个命名元组,包含了内存的各种信息,我们可以从中提取出我们需要的内存使用率。

以下是获取内存使用率的代码:

memory_usage = psutil.virtual_memory().percent

5. 处理并展示数据

我们可以将获取到的CPU占用率和内存使用率进行处理,以便更好地展示给用户。例如,可以将它们四舍五入到小数点后两位,并添加合适的单位。

以下是处理并展示数据的代码:

cpu_usage_formatted = round(cpu_usage, 2)
memory_usage_formatted = round(memory_usage, 2)

print("CPU占用率: {}%".format(cpu_usage_formatted))
print("内存使用率: {}%".format(memory_usage_formatted))

类图

下面是使用mermaid语法绘制的类图:

classDiagram
    class Developer {
        - name: str
        - experience: int
        + teach(beginner: Developer): None
    }

    class Beginner {
        - name: str
        + learn(): None
    }

    Developer --> Beginner

完整代码

下面是完整的代码示例:

import psutil

class Developer:
    def __init__(self, name, experience):
        self.name = name
        self.experience = experience

    def teach(self, beginner):
        print("开始教授{}如何获取CPU占用率与内存使用率".format(beginner.name))

        cpu_usage = psutil.cpu_percent()
        memory_usage = psutil.virtual_memory().percent

        cpu_usage_formatted = round(cpu_usage, 2)
        memory_usage_formatted = round(memory_usage, 2)

        print("CPU占用率: {}%".format(cpu_usage_formatted))
        print("内存使用率: {}%".format(memory_usage_formatted))

        print("教学结束,祝{}学有所成!".format(beginner.name))

class Beginner:
    def __init__(self, name):
        self.name = name

    def learn(self):
        print("{}开始学习如何获取CPU占用率与内存使用率".format(self.name))

developer = Developer("经验丰富的开发者", 5)
beginner = Beginner("刚入行的小白")

developer.teach(beginner)

这段代码中,我们创建了一个Developer类和一个Beginner类,分别表示经验丰富的开发者和刚入行的小白。开发者可以使用teach()方法来教授小白如何获取CPU占用率和内存使用率,而小白可以使用learn()方法来学习这些知识。

运行以上代码,我们可以看到输出结果中包含了CPU占用率和内存使用率的信息。

希望这篇文章能够帮助你理解如何使用Python获取CPU占用率和内存使用率。如果你有任何问题或疑问,请随时向我提问。祝你在开发中取得进步!