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中map、any、all函数用法分析
Apr 21 Python
Python2.7基于笛卡尔积算法实现N个数组的排列组合运算示例
Nov 23 Python
pandas实现选取特定索引的行
Apr 20 Python
Python异步操作MySQL示例【使用aiomysql】
May 16 Python
基于Python打造账号共享浏览器功能
May 30 Python
Python 私有化操作实例分析
Nov 21 Python
Python timer定时器两种常用方法解析
Jan 20 Python
Python xlrd excel文件操作代码实例
Mar 10 Python
linux 下selenium chrome使用详解
Apr 02 Python
Python使用扩展库pywin32实现批量文档打印实例
Apr 09 Python
python小白学习包管理器pip安装
Jun 09 Python
使用Python的开发框架Brownie部署以太坊智能合约
May 28 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
UTF8编码内的繁简转换的PHP类
2009/07/09 PHP
查找php配置文件php.ini所在路径的二种方法
2014/05/26 PHP
Ajax提交表单时验证码自动验证 php后端验证码检测
2016/07/20 PHP
PHP实现Huffman编码/解码的示例代码
2018/04/20 PHP
JMenuTab简单使用说明
2008/03/13 Javascript
jQuery设置与获取HTML,文本和值的简单实例
2014/02/26 Javascript
JavaScript基础篇(3)之Object、Function等引用类型
2015/11/30 Javascript
Node.js文件操作方法汇总
2016/03/22 Javascript
js 定义对象数组(结合)多维数组方法
2016/07/27 Javascript
angularjs中$http异步上传Excel文件方法
2018/02/23 Javascript
讲解vue-router之什么是动态路由
2018/05/28 Javascript
JavaScript 2018 中即将迎来的新功能
2018/09/21 Javascript
使用javascript做时间倒数读秒功能的实例
2019/01/23 Javascript
微信小程序 冒泡事件原理解析
2019/09/27 Javascript
JS中间件设计模式的深入探讨与实例分析
2020/04/11 Javascript
如何修改Vue打包后文件的接口地址配置的方法
2020/04/22 Javascript
JS组件库AlloyTouch实现图片轮播过程解析
2020/05/29 Javascript
python同时给两个收件人发送邮件的方法
2015/04/30 Python
python编程开发之textwrap文本样式处理技巧
2015/11/13 Python
python with提前退出遇到的坑与解决方案
2018/01/05 Python
Python实现获取本地及远程图片大小的方法示例
2018/07/21 Python
解决python线程卡死的问题
2019/02/18 Python
python 非线性规划方式(scipy.optimize.minimize)
2020/02/11 Python
Python绘图之柱形图绘制详解
2020/07/28 Python
Python连接mysql数据库及简单增删改查操作示例代码
2020/08/03 Python
html5应用缓存_动力节点Java学院整理
2017/07/13 HTML / CSS
英国轻奢珠宝品牌:Astley Clarke
2016/12/18 全球购物
中国最大的潮流商品购物网站:YOHO!BUY有货
2017/01/07 全球购物
Superdry瑞典官网:英国日本街头风品牌
2017/05/17 全球购物
销售人员自我评价
2014/02/01 职场文书
党员志愿者活动总结
2014/06/26 职场文书
群众路线教育实践活动对照检查材料
2014/09/22 职场文书
流动人口婚育证明范本
2014/09/26 职场文书
2014年机关工会工作总结
2014/12/19 职场文书
css display table 自适应高度、宽度问题的解决
2021/05/07 HTML / CSS
python cv2图像质量压缩的算法示例
2021/06/04 Python