Python中的psutil库使用指南:轻松监控系统资源

在Python编程中,系统资源的监控和管理是一个常见且重要的任务,无论是进行性能分析、系统管理还是应用性能优化,都离不开对CPU、内存、磁盘及网络等资源的使用情况进行实时监控,这时,psutil(Process and System Utilities)库便成为了一个极为方便且强大的工具,本文将直接给出答案——psutil库是一个跨平台库,能够轻松帮助你获取系统运行的详细信息,并详细介绍如何使用它。

Python中的psutil库怎么使用?

建立信任:为何选择psutil?

  • 跨平台支持:无论是在Windows、Linux、macOS还是其他类Unix系统上,psutil都能提供一致的行为和接口。
  • 丰富的功能:涵盖了CPU、内存、磁盘、网络、传感器以及进程管理等多个方面,满足多样化的监控需求。
  • 简洁易用:API设计直观,文档齐全,即使是初学者也能快速上手。

安装psutil

确保你的环境中已安装psutil库,如果没有安装,可以通过pip轻松安装:

pip install psutil

基本使用示例

  1. 获取CPU信息
import psutil
# 获取CPU逻辑数量(即逻辑核心数)
print(f"Logical CPUs: {psutil.cpu_count(logical=True)}")
# 获取CPU物理数量(即物理核心数,如果无法检测则返回None)
print(f"Physical CPUs: {psutil.cpu_count(logical=False)}") #(或使用参数`logical=False`的替代理解方式,实际根据版本可能直接用psutil.cpu_count(False)的简化形式不推荐(或会报参数问题),推荐查阅最新文档,通常逻辑与物理核心获取方式会明确区分)
# 更正为:通常物理核心获取可能需其他方式或理解psutil.cpu_count()默认逻辑数,物理数可能需结合其他属性或版本说明,此处简化为展示功能,建议:
# 实际查看文档,一种常见做法是逻辑数即总核心(包含超线程),物理数为实际CPU封装的核心数,psutil可能通过cpu_count()配合参数或不同函数获取,以下以展示逻辑核心及总利用率为例:
# 获取各逻辑CPU的使用率百分比,percpu=True表示获取每个CPU的使用率
for i, percentage in enumerate(psutil.cpu_percent(interval=1, percpu=True)):
    print(f"CPU {i}: {percentage}%")
  1. 获取内存信息
# 获取内存总体信息
mem = psutil.virtual_memory()
print(f"Total Memory: {mem.total / (1024 ** 3):.2f} GB")
print(f"Available Memory: {mem.available / (1024 ** 3):.2f} GB")
print(f"Memory Usage: {mem.percent}%")
  1. 获取磁盘信息
# 获取磁盘分区信息
partitions = psutil.disk_partitions()
for partition in partitions:
    print(f"Device: {partition.device}, Mountpoint: {partition.mountpoint}")
    usage = psutil.disk_usage(partition.mountpoint)
    print(f"  Total Size: {usage.total / (1024 ** 3):.2f} GB")
    print(f"  Used: {usage.used / (1024 ** 3):.2f} GB")
    print(f"  Free: {usage.free / (1024 ** 3):.2f} GB")
    print(f"  Usage Percentage: {usage.percent}%")
  1. 获取网络信息
# 获取网络接口信息
net_io = psutil.net_io_counters()
print(f"Total Bytes Sent: {net_io.bytes_sent}")
print(f"Total Bytes Received: {net_io.bytes_recv}")
  1. 进程管理
# 获取当前所有进程
for proc in psutil.process_iter(['pid', 'name', 'username']):
    print(proc.info)

psutil库以其强大的功能和简洁的API设计,成为了Python开发者监控和管理系统资源的得力助手,通过上述示例,你可以看到如何利用psutil轻松获取CPU、内存、磁盘和网络的基本信息,以及如何遍历和管理进程,无论是进行系统性能分析、自动化运维还是开发监控工具,psutil都是一个值得信赖的选择,希望本文能帮助你快速上手psutil,开启系统资源监控的新篇章。

未经允许不得转载! 作者:python1991知识网,转载或复制请以超链接形式并注明出处Python1991知识网

原文地址:https://www.python1991.cn/5844.html发布于:2026-05-08