这篇文章给大家分享的是有关Python中psutil怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
psutil
模块是一个跨平台库 https://github.com/giampaolo/psutil
命令行下通过pip安装:
pip install psutil
如果跟我一样安装的是Anaconda,则剩下这步了,因为自带了。
顾名思义
psutil = process and system utilities
它专门用来获取操作系统以及硬件相关的信息,比如:CPU、内存、磁盘、网络、进程管理等。
今天这篇文章,就来给大家介绍一下其常用功能和使用方法。
先导入psutil
模块,获取CPU的信息数据。
import psutil # CPU逻辑数量 psutil.cpu_count() # CPU物理核心 psutil.cpu_count(logical=False) # 统计CPU的用户/系统/空闲时间 psutil.cpu_times() # interval:每隔0.5s刷新一次 # percpu:查看所有的cpu使用率 for x in range(5): print(psutil.cpu_percent(interval=0.5, percpu=True))
输出结果:
注:大家如果对jupyter notebook 同时输出多个变量感兴趣,可以查看这篇文章
《15个应该掌握的Jupyter Notebook使用技巧(小结)》
输出内存使用情况(总内存、可用内存、内存使用率、已使用内存)。
psutil.virtual_memory()
比如上面输出的total=16499146752
即为总内存16G,已使用内存/总内存= 76.0%(内存使用率)。
可以通过psutil获取磁盘分区、磁盘使用率和磁盘IO信息。
# 磁盘分区信息 psutil.disk_partitions() # 磁盘使用情况 psutil.disk_usage('/') # 磁盘IO psutil.disk_io_counters()
其中,返回的IO信息指标有磁盘IO信息
read_count
(读IO数)
write_count
(写IO数)
read_bytes
(IO写字节数)
read_time
(磁盘读时间)
write_time
(磁盘写时间)
使用psutil
库查询网络读写字节/包的个数。
psutil.net_io_counters()
其中,返回的数据指标有
btes_sent
: 发送的字节数
bytes_recv
: 接收的字节数
packets_sent
: 发送的包数据量
packets_recv
: 接收的包数据量
errin
: 接收包时, 出错的次数
errout
: 发送包时, 出错的次数
dropin
: 接收包时, 丢弃的次数
dropout
: 发送包时, 丢弃的次数
除此以外,还有很多获取网络接口和网络连接信息的函数。
比如
psutil.net_if_addrs()
获取网络接口信息
psutil.net_if_stats()
获取网络接口状态等。
最后,使用psutil
模块也能获取所有进程的详细信息数据!
psutil.pids() # 所有进程ID
返回的结果包括了所有进程的ID(pid)。
根据 pid 可以获取一个进程对应的 Process 对象,而这个对象里面包含了该进程的全部数据。
下面我们指定进程ID=113408,其实就是当前Python交互环境,来获取该进程的信息。
# 获取指定进程ID=113408,其实就是当前Python交互环境 p = psutil.Process(113408) # 进程名称 p.name() # 进程的exe路径 p.exe() # 进程的工作目录 p.cwd() # 进程启动的命令行 p.cmdline() # 当前进程id p.pid
感谢各位的阅读!关于“Python中psutil怎么用”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。