技术员联盟提供win764位系统下载,win10,win7,xp,装机纯净版,64位旗舰版,绿色软件,免费软件下载基地!

当前位置:主页 > 教程 > 服务器类 >

Python如何实现获取磁盘剩余空间

来源:技术员联盟┆发布时间:2017-07-31 06:12┆点击:

import ctypes import os import platform import sys def 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/1024 print(get_free_space_mb('C:\\'),'GB')

方法2:

import win32com.client as com def 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 0 def 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 0 workstations = ['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如何实现获取磁盘剩余空间 三联