Python语言学习-psuti模块
小标 2019-01-02 来源 : 阅读 623 评论 0

摘要:本文主要向大家介绍了Python语言学习-psuti模块,通过具体的内容向大家展示,希望对大家学习Python语言有所帮助。

本文主要向大家介绍了Python语言学习-psuti模块,通过具体的内容向大家展示,希望对大家学习Python语言有所帮助。

psutil(进程和系统实用程序)是一个跨平台的库,用于 在Python中检索有关运行进程和系统利用率(CPU,内存,磁盘,网络,传感器)的信息。它主要用于系统监视,分析和限制流程资源以及运行流程的管理。它实现了UNIX命令行工具提供的许多功能,例如:ps,top,lsof,netstat,ifconfig,who,df,kill,free,nice,ionice,iostat,iotop,uptime,pidof,tty,taskset,pmap。psutil目前支持以下平台:

Linux的

视窗

OSX,

FreeBSD,OpenBSD,NetBSD

Sun Solaris

AIX

... 32位和64位体系结构,Python版本从2.6到3.6。

1、获取系统性能信息

#! /env python3

#coding=utf-8

import psutil

''''

获取cpu信息

'''

a = psutil.cpu_times() #使用cpu_times方法获取cpu完成信息,需要显示所有的cpu信息

b = psutil.cpu_times().user #获取单项cpu的数据信息,如用户user的cpu时间比

c = psutil.cpu_count() #获取cpu的逻辑个数

 

print (a)

print (b)

print (c)

 

'''

内存信息

'''

mem = psutil.virtual_memory()   #使用pstuil.virtual_memory方法获取内存的完整信息

mem_total = psutil.virtual_memory().total #获取内存总数

mem_free = psutil.virtual_memory().free  #获取内存剩余

print (mem)

print (mem_total)

print (mem_free)

 

 

'''

磁盘信息

'''

disk_partitions = psutil.disk_partitions()   #获取磁盘完整信息

disk_usage = psutil.disk_usage('/')   #获取整个硬盘的信息

disk_usage_c = psutil.disk_usage('C://') #获取分区c的硬盘信息

disk_io = psutil.disk_io_counters() #获取硬盘的总io个数、读写信息

disk_io_perdisk = psutil.disk_io_counters(perdisk=True) #‘perdisk=True’参数获取单个分区IO个数、读写信息

print (disk_partitions)

print (disk_usage)

print (disk_usage_c)

print ('硬盘总io=' +str(disk_io))

print ('单个分区信息='+str(disk_io_perdisk))

 

'''

网络信息

'''

net_io = psutil.net_io_counters()   #获取网络总IO信息、默认pernic=False

net_io_pernic = psutil.net_io_counters(pernic=True) #获取每个网卡的io信息

net_connections = psutil.net_connections()#获取所有的连接信息

print (net_io)

print (net_io_pernic)

print (net_connections)

 

'''

其他系统信息

'''

users = psutil.users()      #当前登录系统的用户信息

import datetime

boot_time = psutil.boot_time() #获取开机时间,为linux格式

boot_time_nu = datetime.datetime.fromtimestamp(psutil.boot_time()).strftime('%Y-%m-%d%H:%M:%S') #转换为自然格式

print (users)

print (boot_time)

print (boot_time_nu)

2、系统进程管理

#! /env python3

#coding=utf-8

import psutil

'''

进程信息

'''

pids = psutil.pids() #列出所有进程id

pids_4644= psutil.Process(4644) #列出指定pid为4644的进程信息

print (pids)

print (pids_4644.name())    #输出进程名

print (pids_4644.exe())     #输出进程路径

print (pids_4644.cwd())     #输出绝对路径

print (pids_4644.status())  #输出进程状态

print (pids_4644.create_time()) #输出创建时间、时间戳格式

#print (pids_4644.gid())        #输出进程gid信息

print (pids_4644.cpu_times)     #输出cpu时间信息,包括user,system两个cpu时间

print (pids_4644.cpu_affinity()) #get进程cpu亲和度

print (pids_4644.memory_percent()) #进程利用率

print (pids_4644.memory_info)    #进程内存信息

print (pids_4644.io_counters())  #进程io信息,包括读写IO数及字节数

print (pids_4644.connections())      #返回打开进程sockert的namedutples列表、包括fs,family等信息

print (pids_4644.num_threads())     #进程开启的线程数

 

'''

popen类的使用

'''

import psutil

from subprocess import PIPE   #通过psutil的popen方法启动的应用程序,可以跟踪该程序的所有相关信息

本文由职坐标整理并发布,希望对同学们学习Python有所帮助,更多内容请关注职坐标编程语言Python频道!

本文由 @小标 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程