python 获取内存和cpu的使用率

1. 引言

在进行Python编程时,有时候需要监测程序的内存和CPU的使用率。了解程序的内存和CPU使用情况,有助于优化程序的性能和处理资源限制。

2. 获取内存使用率

2.1 使用psutil库

psutil是Python一个强大的跨平台库,用于获取系统信息,包括内存情况。可以通过安装psutil库来获取内存使用率。下面是一段示例代码:

import psutil

memory_usage = psutil.virtual_memory().percent

print(f"内存使用率:{memory_usage}%")

上述代码通过psutil.virtual_memory()获取系统的内存信息,然后使用percent方法获取内存使用率。

psutil库也可以用于获取其他系统信息,如CPU使用率、磁盘使用率等。

2.2 使用os库

除了使用第三方库psutil,还可以使用Python的os库来获取内存使用率。示例代码如下:

import os

memory_usage = os.popen('free -t -m').readlines()

memory_usage = memory_usage[1].split()[2]

print(f"内存使用率:{memory_usage}%")

上述代码使用os.popen()执行系统命令free -t -m,该命令用于显示系统内存信息。然后从命令输出中提取所需的内存使用率。

3. 获取CPU使用率

3.1 使用psutil库

psutil库不仅可以获取内存使用率,还可以获取CPU使用率。下面是一段示例代码:

import psutil

cpu_usage = psutil.cpu_percent(interval=1)

print(f"CPU使用率:{cpu_usage}%")

上述代码使用psutil.cpu_percent()方法来获取CPU使用率。可以通过interval参数来指定采样间隔,单位为秒。

3.2 使用os库

使用os库也可以获取CPU使用率。下面是一段示例代码:

import os

cpu_usage = os.popen('top -b -n 1 | grep Cpu | awk \'{print $2}\'').readline().strip()

print(f"CPU使用率:{cpu_usage}%")

上述代码执行系统命令top -b -n 1 | grep Cpu | awk '{print $2}'来获取CPU使用率。

4. 结论

通过使用psutil库或os库,我们可以方便地获取Python程序的内存和CPU使用率。对程序的性能优化和资源限制处理起到了重要的作用。希望本文提供的代码示例能帮助读者了解如何获取内存和CPU使用率。

后端开发标签