📜  Python中的 Psutil 模块(1)

📅  最后修改于: 2023-12-03 15:34:24.255000             🧑  作者: Mango

Python中的 Psutil 模块介绍

Psutil 是一个用于检索有关运行中进程和系统利用率的信息的跨平台库(Linux,Windows,macOS,BSD,Solaris等),对于编写有关系统管理、监控等软件非常有用。

安装

使用 pip 可以方便地进行 Psutil 的安装。

pip install psutil
获取进程信息

Psutil 提供了获取进程信息的函数,包括进程 ID,名称,使用的 CPU,内存等信息。

import psutil

# 获取全部进程的详细信息
for proc in psutil.process_iter(['pid', 'name', 'cpu_percent', 'memory_info']):
    print(proc.info)
    
# 获取单个进程的详细信息
p = psutil.Process(1)  # 输入进程 ID
print(p.name)  # 进程名称
print(p.cpu_percent(interval=1))  # 进程 CPU 使用率
print(p.memory_info().rss)  # 进程占用的物理内存
print(p.memory_percent())  # 进程占用的内存百分比
获取系统信息

Psutil 可以获得系统的各种信息,包括 CPU 数量,内存,磁盘使用情况,网络情况等。

import psutil

# 获取 CPU 数量
print(psutil.cpu_count())

# 获取 CPU 使用率(返回值为 0.0 ~ 1.0 之间的浮点数)
print(psutil.cpu_percent(interval=1))

# 获取内存信息
mem = psutil.virtual_memory()
print(mem.total)  # 总内存大小
print(mem.used)  # 已使用内存
print(mem.free)  # 空闲内存

# 获取磁盘使用情况
disk = psutil.disk_usage('/')
print(disk.total)  # 总空间大小
print(disk.used)  # 已使用空间
print(disk.free)  # 空闲空间

# 获取网络信息
net = psutil.net_io_counters()
print(net.bytes_sent)  # 发送的字节数
print(net.bytes_recv)  # 接收的字节数
总结

Psutil 是一个功能强大而又易用的 Python 库,它能帮助我们轻松地获取进程和系统的信息。如果你需要编写类似系统管理、监控等软件,我强烈地推荐你使用 Psutil,它能让你事半功倍。