psutil是一个跨平台的库,用于获取系统和进程信息,如CPU、内存、磁盘、网络等。它非常适合用于系统监控、性能分析和资源管理。以下是关于python psutil库的学习指南:
安装psutil库
在开始使用psutil之前,你需要先安装它。可以通过pip命令来安装:
pip install psutil
获取系统信息
- CPU信息:使用
psutil.cpu_count()
获取CPU逻辑核心数,使用psutil.cpu_percent()
获取CPU使用率。 - 内存信息:使用
psutil.virtual_memory()
获取系统内存使用情况。 - 磁盘信息:使用
psutil.disk_usage('/')
获取根目录的磁盘使用情况。 - 网络信息:使用
psutil.net_io_counters()
获取网络信息,包括发送和接收的字节数等。
获取进程信息
- 使用
psutil.process_iter(['pid', 'name'])
获取所有进程的ID和名称。 - 使用
psutil.Process(pid)
获取特定进程的详细信息,如进程状态、CPU使用率、内存使用情况等。
进程管理
- 使用
psutil.Process(pid).terminate()
停止一个进程。 - 使用
psutil.Process(pid).start(['command', 'arg1', 'arg2'])
启动一个进程。
示例代码
以下是一个简单的示例,展示了如何使用psutil库来获取系统信息:
import psutil
# 获取CPU使用率
cpu_percent = psutil.cpu_percent(interval=1)
print(f"CPU使用率:{cpu_percent}%")
# 获取内存信息
memory = psutil.virtual_memory()
print(f"总内存:{memory.total / (1024 ** 3):.2f} GB")
print(f"已使用内存:{memory.used / (1024 ** 3):.2f} GB")
# 获取磁盘信息
disk_usage = psutil.disk_usage('/')
print(f"磁盘总空间:{disk_usage.total / (1024 ** 3):.2f} GB")
print(f"已使用磁盘空间:{disk_usage.used / (1024 ** 3):.2f} GB")
# 获取网络信息
net_io = psutil.net_io_counters()
print(f"发送字节总数:{net_io.bytes_sent / (1024 ** 3):.2f} GB")
print(f"接收字节总数:{net_io.bytes_recv / (1024 ** 3):.2f} GB")
注意事项
- 在Windows系统上,某些进程信息可能需要管理员权限才能访问。
- 进程信息是实时变化的,建议多次采样来获取更准确的数据。
通过以上步骤,你可以开始使用psutil库来监控和管理你的系统资源。记得动手实践,通过编写代码来加深理解。