python使用wmi模块获取windows下硬盘信息的方法

yipeiwu_com5年前Python基础

本文实例讲述了python使用wmi模块获取windows下硬盘信息的方法。分享给大家供大家参考。具体实现方法如下:

# -*- coding: utf-8 -*- 
#import 
######################################################################## 
import os, sys 
import time 
import wmi 
######################################################################## 
#function 
######################################################################## 
def get_disk_info(): 
     """ 
     获取物理磁盘信息。 
     """ 
     tmplist = [] 
     c = wmi.WMI () 
     for physical_disk in c.Win32_DiskDrive (): 
         tmpdict = {} 
         tmpdict["Caption"] = physical_disk.Caption 
         tmpdict["Size"] = long(physical_disk.Size)/1024/1024/1024 
         tmplist.append(tmpdict) 
     return tmplist 
def get_fs_info() : 
     """ 
     获取文件系统信息。 
     包含分区的大小、已用量、可用量、使用率、挂载点信息。 
     """ 
     tmplist = [] 
     c = wmi.WMI () 
     for physical_disk in c.Win32_DiskDrive (): 
         for partition in physical_disk.associators ("Win32_DiskDriveToDiskPartition"): 
             for logical_disk in partition.associators ("Win32_LogicalDiskToPartition"): 
                 tmpdict = {} 
                 tmpdict["Caption"] = logical_disk.Caption 
                 tmpdict["DiskTotal"] = long(logical_disk.Size)/1024/1024/1024 
                 tmpdict["UseSpace"] = (long(logical_disk.Size)-long(logical_disk.FreeSpace))/1024/1024/1024 
                 tmpdict["FreeSpace"] = long(logical_disk.FreeSpace)/1024/1024/1024 
                 tmpdict["Percent"] = int(100.0*(long(logical_disk.Size)-long(logical_disk.FreeSpace))/long(logical_disk.Size)) 
                 tmplist.append(tmpdict) 
     return tmplist 
if __name__ == "__main__": 
     disk = get_disk_info() 
     print disk 
     print '--------------------------------------' 
     fs = get_fs_info() 
     print fs

希望本文所述对大家的Python程序设计有所帮助。

相关文章

Python socket实现简单聊天室

本文实例为大家分享了Python socket实现简单聊天室的具体代码,供大家参考,具体内容如下 服务端使用了select模块,实现了对多个socket的监控。客户端由于select在W...

如何使用Python 打印各种三角形

直角三角形 rows = int(input('输入列数:')) for i in range(1, rows): print('*' * i) for i in range(1,...

简单介绍Python中的RSS处理

RSS 是一个可用多种扩展来表示的缩写:“RDF 站点摘要(RDF Site Summary)”、“真正简单的辛迪加(Really Simple Syndication)”、“丰富站点摘...

python查看模块,对象的函数方法

python查看模块,对象的函数方法

这段时间在用libev的python版本事件模型,总共只有一个py.so文件,没有.py文件查看源码查看接口,最开始用shell命令直接查看.so的接口不尽人意。然后发现python提供...

Python编程实现的图片识别功能示例

本文实例讲述了Python编程实现的图片识别功能。分享给大家供大家参考,具体如下: 1. 安装PIL,官方没有WIN64位,Pillow替代 pip install Pillow-2.7...