python中psutil模块的使用详解(python3经典编程案例)

简介: 这篇文章介绍了如何使用Python的`pyinstaller`库打包应用程序,并提供了详细的打包步骤和参数说明。

一. psutil模块的介绍

psutil(process and system utilities) 是一个跨平台的库,用于在Python中检索有关运行进程和系统利用率(CPU、内存、磁盘、网络、传感器)的信息。

它主要用于系统监控、分析和限制流程资源以及管理正在运行的流程。

它实现了经典UNIX命令行工具提供的许多功能,如ps、top、iotop、lsof、netstat、ifconfig、free等。

psutil模块可以跨平台使用,支持Linux/UNIX/OSX/Windows等,它主要用来做系统监控,性能分析,进程管理等。

在python中,可以使用psutil这个第三方模块去获取信息的信息。

github地址:https://github.com/giampaolo/psutil

官方文档:https://psutil.readthedocs.io/en/latest/

安装:pip3 install psutil

二. psutil模块的使用

2.1 获取cpu信息
import psutil

# 1. 获取CPU的完整信息
print(psutil.cpu_times())

# 2. 获取CPU的逻辑个数
print(psutil.cpu_count())

# 3. 获取CPU的物理个数
print(psutil.cpu_count(logical=False))


# 4. psutil获取系统CPU使用率的方法是cpu_percent(),其有两个参数,分别是interval和percpu
# interval指定的是计算cpu使用率的时间间隔,percpu则指定是选择总的使用率还是每个cpu的使用率
for x in range(10):
    print(psutil.cpu_percent(interval=1))

    print(psutil.cpu_percent(interval=1,percpu=True))
2.2 获取内存信息
import psutil
# 1. 获取系统内存的使用情况
print(psutil.virtual_memory())

# 2. 获取系统交换内存的统计信息
print(psutil.swap_memory())
2.3 获取磁盘信息
# 1. 获取磁盘分区的信息
print(psutil.disk_partitions())
# 2. 获取磁盘的使用情况
print(psutil.disk_usage('/'))
# 3. 获取磁盘的IO统计信息(读写速度等)
print(psutil.disk_io_counters())
2.4 获取网络信息
# 1. 获取总的网络IO信息
print(psutil.net_io_counters())
# 2. 获取网卡的IO信息
print(psutil.net_io_counters(pernic=True))
# 3. 获取网络接口信息
print(psutil.net_if_addrs())
# 4. 获取网络接口状态信息
print(psutil.net_if_stats())
2.5 获取其他系统信息
# 获取系统的开机时间,并转化为自然的格式
print(psutil.boot_time())
# 获取连接系统的用户列表
print(psutil.users())
# 获取系统全部的进程信息
print(psutil.pids())
# 获取单个进程的信息, 获取指定进程ID=780
print(psutil.Process(780))
2.6 模拟出ps命令的效果
print(psutil.test())
2.7 以json的形式返回进程的pid和名称
for proc in psutil.process_iter(['pid', 'name']):
    print(proc.info)

# 运行结果入下:
{
   'pid': 35907, 'name': 'Google Chrome Helper (Renderer)'}
{
   'pid': 36575, 'name': 'com.apple.Safari.SafeBrowsing.Service'}
{
   'pid': 36729, 'name': 'com.apple.AppleU'}

❤️ 如果觉得有用,可以关注或者收藏一下哦 !!!❤️

相关文章
|
2月前
|
SQL 关系型数据库 数据库
Python SQLAlchemy模块:从入门到实战的数据库操作指南
免费提供Python+PyCharm编程环境,结合SQLAlchemy ORM框架详解数据库开发。涵盖连接配置、模型定义、CRUD操作、事务控制及Alembic迁移工具,以电商订单系统为例,深入讲解高并发场景下的性能优化与最佳实践,助你高效构建数据驱动应用。
302 7
|
2月前
|
Python
Python编程:运算符详解
本文全面详解Python各类运算符,涵盖算术、比较、逻辑、赋值、位、身份、成员运算符及优先级规则,结合实例代码与运行结果,助你深入掌握Python运算符的使用方法与应用场景。
179 3
|
2月前
|
数据处理 Python
Python编程:类型转换与输入输出
本教程介绍Python中输入输出与类型转换的基础知识,涵盖input()和print()的使用,int()、float()等类型转换方法,并通过综合示例演示数据处理、错误处理及格式化输出,助你掌握核心编程技能。
420 3
|
2月前
|
Java 调度 数据库
Python threading模块:多线程编程的实战指南
本文深入讲解Python多线程编程,涵盖threading模块的核心用法:线程创建、生命周期、同步机制(锁、信号量、条件变量)、线程通信(队列)、守护线程与线程池应用。结合实战案例,如多线程下载器,帮助开发者提升程序并发性能,适用于I/O密集型任务处理。
260 0
|
3月前
|
数据采集 机器学习/深度学习 人工智能
Python:现代编程的首选语言
Python:现代编程的首选语言
287 102
|
3月前
|
数据采集 机器学习/深度学习 算法框架/工具
Python:现代编程的瑞士军刀
Python:现代编程的瑞士军刀
314 104
|
3月前
|
人工智能 自然语言处理 算法框架/工具
Python:现代编程的首选语言
Python:现代编程的首选语言
260 103
|
3月前
|
机器学习/深度学习 人工智能 数据挖掘
Python:现代编程的首选语言
Python:现代编程的首选语言
193 82
|
2月前
|
并行计算 安全 计算机视觉
Python多进程编程:用multiprocessing突破GIL限制
Python中GIL限制多线程性能,尤其在CPU密集型任务中。`multiprocessing`模块通过创建独立进程,绕过GIL,实现真正的并行计算。它支持进程池、队列、管道、共享内存和同步机制,适用于科学计算、图像处理等场景。相比多线程,多进程更适合利用多核优势,虽有较高内存开销,但能显著提升性能。合理使用进程池与通信机制,可最大化效率。
264 3

推荐镜像

更多