python中的psutil模块详解(cpu、内存、磁盘情况、结束指定进程)

Python中的psutil模块详解

什么是psutil

psutil是一个跨平台的系统监控库,可以获取CPU、内存、磁盘和网络等系统信息。使用psutil可以实现监控系统,实现自动化运维等功能。

安装psutil

使用pip可以轻松安装psutil:

pip install psutil

获取CPU使用率

使用psutil.cpu_percent()方法可以获取CPU使用率,如下所示:

import psutil

# 获取CPU使用率
cpu_percent = psutil.cpu_percent(interval=1)
print("CPU使用率:{}%".format(cpu_percent))

其中interval参数表示获取CPU使用率的时间间隔,默认为1秒。

获取内存使用情况

使用psutil.virtual_memory()方法可以获取内存使用情况,如下所示:

import psutil

# 获取内存使用情况
mem = psutil.virtual_memory()
# 总内存
total = mem.total / 1024 / 1024
# 使用中的内存
used = mem.used / 1024 / 1024
# 空闲内存
free = mem.free / 1024 / 1024
print("内存使用情况:总内存{}MB,使用中{}MB,空闲{}MB".format(round(total), round(used), round(free)))

其中virtual_memory()方法返回的是一个命名元组,包含了总内存、使用中的内存、空闲内存等信息。

获取磁盘使用情况

使用psutil.disk_usage()方法可以获取磁盘使用情况,如下所示:

import psutil

# 获取磁盘使用情况
disk_usage = psutil.disk_usage("/")
# 磁盘总大小
total = disk_usage.total / 1024 / 1024 / 1024
# 磁盘已用大小
used = disk_usage.used / 1024 / 1024 / 1024
# 磁盘剩余大小
free = disk_usage.free / 1024 / 1024 / 1024
print("磁盘使用情况:总磁盘大小{}GB,已用{}GB,剩余{}GB".format(round(total, 2), round(used, 2), round(free, 2)))

其中disk_usage()方法返回的也是一个命名元组,包含了磁盘总大小、已用大小和剩余大小等信息。

结束指定进程

使用psutil.process_iter()方法可以迭代所有进程,使用process.name()可以获取进程的名称,使用process.pid可以获取进程的PID。

import psutil

# 结束指定进程
def terminate_process(process_name):
    for process in psutil.process_iter():
        try:
            # 获取进程名称
            name = process.name()
            # 判断进程是否为指定进程
            if name == process_name:
                print("正在结束进程:", name)
                # 结束进程
                process.terminate()
        except (psutil.NoSuchProcess, psutil.AccessDenied, psutil.ZombieProcess):
            pass
    print("进程结束操作完成")

if __name__ == "__main__":
    terminate_process("notepad.exe")

以上代码会结束所有名称为notepad.exe的进程。

总结

以上就是psutil模块的详细讲解,使用psutil可以轻松地获取系统信息,实现监控系统、自动化运维等功能,是Python系统编程中的重要工具之一。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python中的psutil模块详解(cpu、内存、磁盘情况、结束指定进程) - Python技术站

(0)
上一篇 2023年5月30日
下一篇 2023年5月30日

相关文章

  • Python连接SQLServer2000的方法详解

    SQLServer2000连接的准备工作 在进行Python连接SQLServer2000之前,需要做一些准备工作: 安装ODBC驱动器:ODBC(Open Database Connectivity)可以将SQLServer与Python连接。安装ODBC驱动器可在Microsoft官网下载安装; 安装Python的pyodbc工具包:pyodbc是一个P…

    python 2023年5月20日
    00
  • Python中非常实用的一些功能和函数分享

    Python中非常实用的一些功能和函数分享 Python是一种功能强大的编程语言,提供了很多实用的功能和函数,可以帮助我们更高效地完成编程任务。以下是一些非常实用的功能和函数分享: 1. 字符串拼接 字符串拼接是一种常见的操作,Python提供了多种方法实现字符串拼接,如下所示: 1.1 使用”+”号 name = "Alice" age…

    python 2023年5月19日
    00
  • 关于python中的setup.py

    下面是关于Python中的setup.py的完整攻略。 什么是setup.py? setup.py是一个Python脚本,用于描述项目的元数据,并通过调用setuptools库来构建、打包和分发Python模块和应用程序。通常,setup.py需要包含两个主要部分: 描述项目元数据的setup()函数调用。 控制Python构建和分发的命令行接口。 setu…

    python 2023年6月3日
    00
  • 如何使用matplotlib在python中生成3d三角面(trisurf)图(数据已准备好)?

    【问题标题】:How to generate a 3d triangle surface (trisurf) plot in python with matplotlib (the data is prepared)?如何使用matplotlib在python中生成3d三角面(trisurf)图(数据已准备好)? 【发布时间】:2023-04-01 14:3…

    Python开发 2023年4月8日
    00
  • Python实现简单2048小游戏

    当然,我很乐意为您提供“Python实现简单2048小游戏”的完整攻略。以下是详细步骤和示例。 2048小游戏的概述 2048是一款益智小游戏,玩家需要通过合并相同的方块,不地得到更高的数字,直到达到2048为止。在这个游戏中,玩家需要使用方向键来控方块的移动方向,将相同数字的方块合并在一起。 2048小游戏的实现步骤 以下是实现2048小戏的本步骤: 1.…

    python 2023年5月13日
    00
  • 怎样使用Python脚本日志功能

    当我们使用Python编写程序时,希望能够记录程序的运行状态以供调试、优化和错误追踪。为此,Python内置了日志模块,通过使用日志模块可以简化开发人员编写日志记录代码的过程。 以下是使用Python脚本日志功能的完整攻略: 步骤1:引入日志模块 在Python脚本中使用日志功能时,首先需要在脚本中引入日志模块。Python的标准库中自带有logging模块…

    python 2023年6月3日
    00
  • Python爬虫获取基金基本信息

    Python爬虫获取基金基本信息 本攻略将介绍如何使用Python爬虫获取基金基本信息。我们将使用Python的requests库和BeautifulSoup库来获取和解析网页内容,使用pandas库来处理数据。 获取网页内容 我们可以使用Python的requests库和BeautifulSoup库来获取和解析网页内容。以下是一个示例代码,用于获取天天基金…

    python 2023年5月15日
    00
  • python爬虫beautifulsoup解析html方法

    在Python中,可以使用BeautifulSoup库解析HTML文档。BeautifulSoup是一个Python库,用于解析HTML和XML文档。本文将详细讲解Python爬虫BeautifulSoup解析HTML的方法,包括两个示例。 示例一:解析HTML标签 以下是一个示例代码,演示如何使用BeautifulSoup解析HTML标签: from bs…

    python 2023年5月15日
    00
合作推广
合作推广
分享本页
返回顶部