您当前的位置:首页 > IT编程 > python
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:Python中psutil模块使用汇总

51自学网 2022-02-21 10:46:43
  python
这篇教程Python中psutil模块使用汇总写得很实用,希望能帮到您。

简介:psutil(进程和系统实用程序)是一个跨平台库,用于检索Python中运行进程和系统利用率(CPU、内存、磁盘、网络、传感器)的信息。它主要用于系统监视、分析和限制进程资源以及管理正在运行的进程。它实现了经典UNIX命令行工具提供的许多功能,如ps、top、iotop、lsof、netstat、ifconfig、free等。

支持的平台:Linux、Windows、macOS、FreeBSD, OpenBSD, NetBSD、Sun Solaris、AIX等平台。

安装:

pip install psutil

用户系统信息:

import psutilimport datetimeprint("当前用户:", psutil.users())print("当前系统时间:", psutil.boot_time())  # 以时间戳格式返回)print(datetime.datetime.fromtimestamp(psutil.boot_time()).strftime("%Y-%m-%d %H: %M: %S"))  # 转换成自然时间格式

内存信息:

mem = psutil.virtual_memory()print("系统内存全部信息:", mem)mem_total = float(mem.total)mem_used = float(mem.used)mem_free = float(mem.free)mem_percent = float(mem.percent)print(f"系统总计内存:{mem_total}")print(f"系统已经使用内存:{mem_used}")print(f"系统空闲内存:{mem_free}")print(f"系统内存使用率:{mem_percent}")

CPU信息:

print("CPU汇总信息:", psutil.cpu_times())print("cpu逻辑个数:", psutil.cpu_count())print("swap内存信息:", psutil.swap_memory())

磁盘信息:

print("获取磁盘的完整信息:", psutil.disk_partitions())print("获取分区表的参数:", psutil.disk_usage('/'))  # 获取/分区的状态print("获取硬盘IO总个数:", psutil.disk_io_counters())print("获取单个分区IO个数:", psutil.disk_io_counters(perdisk=True))  # perdisk=True参数获取单个分区IO个数

网络信息:

print("获取网络总IO信息:", psutil.net_io_counters())

系统进程管理信息:

print("查看系统全部进程:", psutil.pids())

单个进程的详细信息:

pid_info = psutil.Process(1200)print(pid_info.name())  # 进程名print(pid_info.exe())  # 进程的bin路径print(pid_info.status())  # 进程状态print(pid_info.create_time())  # 进程创建时间print(pid_info.cpu_times())  # 进程的cpu时间信息,包括user,system两个cpu信息print(pid_info.memory_percent())  # 进程内存利用率print(pid_info.memory_info())  # 进程内存rss,vms信息print(pid_info.io_counters())  # 进程的IO信息,包括读写IO数字及参数print(pid_info.num_threads())  # 进程开启的线程数

源码:

import psutilimport datetime# 用户,系统相关:print("当前用户:", psutil.users())print("当前系统时间:", psutil.boot_time())  # 以linux时间格式返回)print(datetime.datetime.fromtimestamp(psutil.boot_time()).strftime("%Y-%m-%d %H: %M: %S"))  # 转换成自然时间格式# 内存相关:mem = psutil.virtual_memory()print("系统内存全部信息:", mem)mem_total = float(mem.total)mem_used = float(mem.used)mem_free = float(mem.free)mem_percent = float(mem.percent)print(f"系统总计内存:{mem_total}")print(f"系统已经使用内存:{mem_used}")print(f"系统空闲内存:{mem_free}")print(f"系统内存使用率:{mem_percent}")# CPU相关:print("CPU汇总信息:", psutil.cpu_times())print("cpu逻辑个数:", psutil.cpu_count())print("swap内存信息:", psutil.swap_memory())# 磁盘相关:print("获取磁盘的完整信息:", psutil.disk_partitions())print("获取分区表的参数:", psutil.disk_usage('/'))  # 获取/分区的状态print("获取硬盘IO总个数:", psutil.disk_io_counters())print("获取单个分区IO个数:", psutil.disk_io_counters(perdisk=True))  # perdisk=True参数获取单个分区IO个数# 网络相关:print("获取网络总IO信息:", psutil.net_io_counters())# 系统进程管理:print("查看系统全部进程:", psutil.pids())# 单个进程的详细信息:pid_info = psutil.Process(1200)print(pid_info.name())  # 进程名print(pid_info.exe())  # 进程的bin路径print(pid_info.status())  # 进程状态print(pid_info.create_time())  # 进程创建时间print(pid_info.cpu_times())  # 进程的cpu时间信息,包括user,system两个cpu信息print(pid_info.memory_percent())  # 进程内存利用率print(pid_info.memory_info())  # 进程内存rss,vms信息print(pid_info.io_counters())  # 进程的IO信息,包括读写IO数字及参数print(pid_info.num_threads())  # 进程开启的线程数

运行结果:

图片

到此这篇关于Python中psutil模块使用的文章就介绍到这了,更多相关Python psutil模块内容请搜索51zixue.net以前的文章或继续浏览下面的相关文章希望大家以后多多支持51zixue.net!


Python全栈之基本数据类型
Python利用matplotlib实现饼图绘制
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。