Python获取电脑硬件信息及状态的实现方法
2023-06-13 09:15:44 时间
本文以实例形式展示了Python获取电脑硬件信息及状态的实现方法,是Python程序设计中很有实用价值的技巧。分享给大家供大家参考之用。具体方法如下:
主要功能代码如下:
#!/usr/bin/envpython #encoding:utf-8 fromoptparseimportOptionParser importos importre importjson defmain(): try: parser=OptionParser(usage="%prog[options]") reg_result=re.compile("\[(.*)\]") #addoption parser.add_option("-m","--machine",action="store",type="string",dest="machine",help="themachinetobecheck") parser.add_option("-f","--file",action="store",type="string",dest="file",help="thefilewithmachinelist") parser.add_option("-n","--noah_path",action="store",type="string",dest="noah",help="thebnspathorgroup") (options,args)=parser.parse_args() result="" ifoptions.machine: options.machine=options.machine.replace(".baidu.com","") result=os.popen("meta-queryentityhost"+options.machine+"-fsysSuit,memTotal,diskTotal,cpuFrequency,cpuPhysicalCores,netIdc,status-j").read() elifoptions.file: result=os.popen("meta-queryentityhost-fsysSuit,memTotal,diskTotal,cpuFrequency,cpuPhysicalCores,netIdc,status-F"+options.file+"-j").read() elifoptions.noah: result=os.popen("get_instance_by_service"+options.noah+"|meta-queryentityhost-fsysSuit,memTotal,diskTotal,cpuFrequency,cpuPhysicalCores,netIdc,status-F-j").read() else: return result=json.loads(result) print"%-*s%-*s%-*s%-*s%-*s%-*s"%(40,"Name",10,"CPU",10,"memery",10,"disk",10,"IDC",10,"status") foriteminresult: ifitem["Values"]["cpuFrequency"]!="null": item["Values"]["cpuFrequency"]=str(float(item["Values"]["cpuFrequency"])/1000.0)[0:3] else: item["Values"]["cpuFrequency"]="0" item["Values"]["diskTotal"]=str(float(item["Values"]["diskTotal"])/1000000000.0)[0:5] item["Values"]["memTotal"]=str(float(item["Values"]["memTotal"])/1024/1000.0)[0:5] print"%-*s%-*s%-*s%-*s%-*s%-*s"%(40,item["Name"],10,item["Values"]["cpuFrequency"]+"x"+item["Values"]["cpuPhysicalCores"],10,item["Values"]["memTotal"]+"G",10,item["Values"]["diskTotal"]+"T",10,item["Values"]["netIdc"],10,item["Values"]["status"]) exceptException,e: return if__name__=="__main__": main()
希望本文所述对大家Python程序设计的学习有所帮助。
相关文章
- python求逆矩阵的方法,Python 如何求矩阵的逆「建议收藏」
- 记一次python清洗疫情历史数据
- 如何为pycharm配置Python解释器_pycharm选择python解释器
- python中矩阵的转置怎么写_Python 矩阵转置的几种方法小结
- python实现矩阵的转置_Python实现矩阵转置的方法分析
- python中pygame怎么安_Python中pygame安装方法图文详解
- python字典和json字符串相互转化的方法_pythonjson文件存储
- Python数据分析中常用的工具类和方法【持续更新系列】
- 【说站】python处理数字列表的函数
- 【说站】Python中random模块的方法整理
- python pkl文件_Python字符串格式化输出的方式包括
- Python的正则表达式_python正则表达式例子
- python判断文件后缀_Python 判断文件后缀是否被篡改
- python写文件追加 按行追加_python 追加写入
- 关于python中lambda函数的描述_Python全局变量
- 4.Python中条件语句使用方法(if语句、if嵌套)
- pycharm如何调试python程序_Pycharm断点调试Python程序的步骤方法
- 【7】python_matplotlib 输出(保存)矢量图方法;画图时图例说明(legend)放到图像外侧;Python_matplotlib图例放在外侧保存时显示不完整问题解决
- 独家 | 数据科学家对可复用Python代码的实用管理方法(附链接)
- python-Python与SQLite数据库-处理SQLite查询结果(二)
- Python set集合方法详解(全)
- Python MetaClass元类详解
- Ubuntu18.04 一键升级Python所有第三方包 及安装python包的方法
- python根据域名获得ip地址详解编程语言
- python登陆网页并处理网站session和cookie详解编程语言
- python通过http(multipart/form-data)上传文件的方法详解编程语言
- Python面向对象中的classmethod类方法和__getattr__方法介绍详解编程语言
- Python break、continue和pass用法详解
- Linux与Python:开拓者的新时代(linux和python)
- Linux查看Python版本的有效方法(linux查看python版本)
- 在Linux上学习Python——你的编程之路(linux学python)
- python用Redis与Python实现大数据收集与分析(redis 联合)
- Python字典(Dictionary)操作详解
- Python实现检测服务器是否可以ping通的2种方法
- Python单链表的简单实现方法