Python–系统性能信息模块psutil
psutil模块介绍
在Python中,我们可以使用psutil这个第三方模块去获取信息的信息。
psutil模块可以跨平台使用,支持Linux/UNIX/Windows等,它主要用来做系统监控,性能分析,进程管理等。
psutil模块安装
Windows安装
安装以后方便使用python软件PyCharm来调用模块
pip3 install psutil # 在Windows的命令行输入命令即可
Linux安装
安装依赖
yum install -y gcc libffi-devel python3-devel openssl-devel
安装psutil
wget https://pypi.python.org/packages/source/p/psutil/psutil-3.2.1.tar.gz --no-check-certificate # 下载软件包
tar zxvf psutil-3.2.1.tar.gz # 解压
cd psutil-3.2.1
python3 setup.py install # 安装psutil
psutil模块使用
前提:模块在使用之前一定要先声明调用
import psutil
1.获取CPU的信息
CPU相关函数
函数 | 描述 |
---|---|
psutil.cpu_count() | cpu_count(,[logical]):默认返回逻辑CPU的个数,当设置logical的参数为False时,返回物理CPU的个数。 |
psutil.cpu_percent() | cpu_percent(,[percpu],[interval]):返回CPU的利用率,percpu为True时显示所有物理核心的利用率,interval不为0时,则阻塞时显示interval执行的时间内的平均利用率 |
psutil.cpu_times() | cpu_times(,[percpu]):以命名元组(namedtuple)的形式返回cpu的时间花费,percpu=True表示获取每个CPU的时间花费 |
psutil.cpu_times_percent() | cpu_times_percent(,[percpu]):功能和cpu_times大致相同,看字面意思就能知道,该函数返回的是耗时比例。 |
(1)获取CPU时间
psutil.cpu_times()函数
In [3]: psutil.cpu_times()
Out[3]:scputimes(user=12.39, nice=0.0, system=23.7, idle=17256.04, iowait=0.92, irq=0.0, softirq=0.37, steal=0.0, guest=0.0, guest_nice=0.0)
(2)查看单项数据信息
In [4]:psutil.cpu_times().user
Out[4]:12.39
(3)查看CPU的个数
psutil.cpu_count()获取CPU的逻辑个数;psutil.cpu_count(logical=False)获取CPU的物理个数;默认logical值为True;
In [9]: psutil.cpu_count() # 获取逻辑CPU个数是1
Out[9]: 1
In [10]: psutil.cpu_count(logical=False) # 获取物理CPU个数是1
Out[10]: 1
(4)查看CPU利用率
psutil获取系统CPU使用率的方法是cpu_percent(),其有两个参数,分别是interval和percpu;interval指定的是计算cpu使用率的时间间隔,percpu则指定是选择总的使用率还是每个cpu的使用率;
In [20]: psutil.cpu_percent() # 查询当前CPU使用率
Out[20]: 0.1
In [21]: psutil.cpu_percent(interval=2,percpu=True) 3 查询2秒内CPU的使用率
Out[21]: [0.0]
2.获取内存信息
(1)获取内存使用情况
在获取内存信息的时候需要创建对象
psutil.virtual_memory()函数
In [26]: mem = psutil.virtual_memory()
In [26]: print(mem)
Out[27]: svmem(total=1019793408, available=627859456, percent=38.4, used=771510272, free=248283136, active=406474752, inactive=235048960