在内存中运行的程序,有几个属性,我用python来分享如何查看内存中运行的程序属性
工具/原料
python
电脑
方法/步骤
1、1.安装python与pycharm,这步不截图了,要读取进程,需要用到psutil包,打开执行输入cmd进入dos命令框,用pip3installpsutil来安装,看到successfully表示包安装成功
2、2.打患束锍瓜开pycharm,新建一个test.py,输入以下命令importpsutilimportosfromioimportStringIOinfo=惺绅寨瞀psutil.virtual_memory()print(u'内存使用:',psutil.Process(os.getpid()).memory_info().rss)print(u'总内存:',info.total)print(u'内存占比:',info.percent)print(u'cpu个数:',psutil.cpu_count())foriinpsutil.process_iter():print(i.name())
3、3.先执行,看看结果之后,我们在来分享程序代码片段意思。分三个部分,第一部分是import导入必要的包,第二部分直接print是指psutil的常见的用法,第三部分for循环是找内存中运行的程序,且输出程序名
4、4.重点介绍for循环,psutil.process_iter是python查看内存的一个迭代器,定义变量i遍历迭代器,用print输出i.name,就是名字的意思,这个迭代器是python3里常用的,psutil还有其它的很多常用方法,可以多动手操作一下
5、5.内存中运酚祯馄嫱行的程序还有两个重要的属性,就是内存地址(索引)ID与值(value),再次新建一个test.py文件,输入fromioimportStringIOa=StringIO烫喇霰嘴('你好')print(id(a))print(hex(id(a)))print(a.getvalue())
6、6.StringIO包是系统自带的,无需安装,定义a=StringIo('你好'),使用ID这个函数是查询ID的物理地址,用hex函数,可以将地址转换为16进制,具体查看,用getvalue,直接输出结果