import os import platform import ctypes def getLocalSpace(folder): """ 獲取磁盤剩余空間 :param folder: 磁盤路徑 例如 D:\\ :return: 剩余空間 單位 G """ folderTemp = folder if not os.path.exists(folderTemp): folderTemp = os.getcwd() if platform.system() == 'Windows': free_bytes = ctypes.c_ulonglong(0) ctypes.windll.kernel32.GetDiskFreeSpaceExW(ctypes.c_wchar_p(folderTemp), None, None, ctypes.pointer(free_bytes)) return free_bytes.value / 1024 / 1024 / 1024 else: st = os.statvfs(folderTemp) return st.f_bavail * st.f_frsize / 1024 / 1024