首页 > 编程 > Python > 正文

Python实现获取磁盘剩余空间的2种方法

2020-01-04 17:17:29
字体:
来源:转载
供稿:网友

本文实例讲述了Python实现获取磁盘剩余空间的2种方法。分享给大家供大家参考,具体如下:

方法1:

import ctypesimport osimport platformimport sysdef get_free_space_mb(folder):  """ Return folder/drive free space (in bytes)  """  if platform.system() == 'Windows':    free_bytes = ctypes.c_ulonglong(0)    ctypes.windll.kernel32.GetDiskFreeSpaceExW(ctypes.c_wchar_p(folder), None, None, ctypes.pointer(free_bytes))    return free_bytes.value/1024/1024/1024   else:    st = os.statvfs(folder)    return st.f_bavail * st.f_frsize/1024/1024print(get_free_space_mb('C://'),'GB')

方法2:

import win32com.client as comdef TotalSize(drive):  """ Return the TotalSize of a shared drive [GB]"""  try:    fso = com.Dispatch("Scripting.FileSystemObject")    drv = fso.GetDrive(drive)    return drv.TotalSize/2**30  except:    return 0def FreeSpace(drive):  """ Return the FreeSpace of a shared drive [GB]"""  try:    fso = com.Dispatch("Scripting.FileSystemObject")    drv = fso.GetDrive(drive)    return drv.FreeSpace/2**30  except:    return 0workstations = ['dolphins']print ('Hard drive sizes:')for compName in workstations:  drive = '////' + compName + '//c$'  print ('*************************************************/n')  print (compName)  print ('TotalSize of %s = %f GB' % (drive, TotalSize(drive)))  print ('FreeSpace on %s = %f GB' % (drive, FreeSpace(drive)))  print ('*************************************************/n')

运行效果如下图:

Python,获取,磁盘,剩余空间

 

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

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表