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


Posted in Python onJune 07, 2017

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

方法1:

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实现获取磁盘剩余空间的2种方法

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

Python 相关文章推荐
Python的gevent框架的入门教程
Apr 29 Python
解决pip install的时候报错timed out的问题
Jun 12 Python
Python基于递归算法求最小公倍数和最大公约数示例
Jul 27 Python
python 简单照相机调用系统摄像头实现方法 pygame
Aug 03 Python
Python变量访问权限控制详解
Jun 29 Python
Python基于OpenCV实现人脸检测并保存
Jul 23 Python
Python中的单下划线和双下划线使用场景详解
Sep 09 Python
Python3 把一个列表按指定数目分成多个列表的方式
Dec 25 Python
Python GUI编程学习笔记之tkinter事件绑定操作详解
Mar 30 Python
Python3爬虫发送请求的知识点实例
Jul 30 Python
基于python模拟bfs和dfs代码实例
Nov 19 Python
Python类方法总结讲解
Jul 26 Python
Python2.7基于淘宝接口获取IP地址所在地理位置的方法【测试可用】
Jun 07 #Python
Python中音频处理库pydub的使用教程
Jun 07 #Python
python中defaultdict的用法详解
Jun 07 #Python
浅谈numpy中linspace的用法 (等差数列创建函数)
Jun 07 #Python
python面向对象_详谈类的继承与方法的重载
Jun 07 #Python
windows下python连接oracle数据库
Jun 07 #Python
Python使用剪切板的方法
Jun 06 #Python
You might like
Protoss建筑一览
2020/03/14 星际争霸
PHP 日,周,月点击排行统计
2012/01/11 PHP
PHP 5.5 创建和验证哈希最简单的方法详解
2013/11/07 PHP
PHP实现的数独求解问题示例
2017/04/18 PHP
自己写了一个展开和收起的多更能型的js效果
2013/03/05 Javascript
jquery的选择器的使用技巧之如何选择input框
2013/09/22 Javascript
JavaScript模块规范之AMD规范和CMD规范
2015/10/27 Javascript
javascript HTML5 Canvas实现圆盘抽奖功能
2016/04/11 Javascript
仅9张思维导图帮你轻松学习Javascript 就这么简单
2016/06/01 Javascript
node-http-proxy修改响应结果实例代码
2016/06/06 Javascript
javascript显示系统当前时间代码
2016/12/29 Javascript
selenium 与 chrome 进行qq登录并发邮件操作实例详解
2017/04/06 Javascript
node+vue实现用户注册和头像上传的实例代码
2017/07/20 Javascript
jqueryUI tab标签页代码分享
2017/10/09 jQuery
分析JS单线程异步io回调的特性
2017/12/01 Javascript
vue-router动态设置页面title的实例讲解
2018/08/30 Javascript
angular.js实现列表orderby排序的方法
2018/10/02 Javascript
vue中多个倒计时实现代码实例
2019/03/27 Javascript
Vue.js路由实现选项卡简单实例
2019/07/24 Javascript
JS中比Switch...Case更优雅的多条件判断写法
2019/09/05 Javascript
python发送邮件的实例代码(支持html、图片、附件)
2013/03/04 Python
解决PyCharm的Python.exe已经停止工作的问题
2018/11/29 Python
Django网络框架之HelloDjango项目创建教程
2019/06/06 Python
python3.7将代码打包成exe程序并添加图标的方法
2019/10/11 Python
Python文字截图识别OCR工具实例解析
2020/03/05 Python
python爬取代理IP并进行有效的IP测试实现
2020/10/09 Python
CSS3打造磨砂玻璃背景效果
2016/09/28 HTML / CSS
美国家用电器和电子产品商店:Abt
2016/09/06 全球购物
男女时尚与复古风格在线购物:RoseGal(全球免费送货)
2017/07/19 全球购物
预备党员转正思想汇报
2014/01/12 职场文书
大学生实习感言
2014/01/16 职场文书
经典而简洁的婚礼主持词
2014/03/13 职场文书
清扬洗发水广告词
2014/03/14 职场文书
初中升旗仪式演讲稿
2014/05/08 职场文书
同志主要表现材料
2014/08/21 职场文书
2015年店长工作总结范文
2015/04/08 职场文书